如何在sqlite中显示内连接查询表的结果?

时间:2014-04-11 09:56:02

标签: c# sqlite windows-runtime visual-studio-2013 windows-8.1

所以,我在SQLite数据库中使用C#winrt。我想显示我有"加入" ed。

的查询结果

我有2个表,分别是学生和课程。

学生有:id(PK),name,courseid

课程有:courseid(PK),coursename

这是我的代码:

        var query1 = conn.QueryAsync<Student>("select * from Student s inner Join Course c on s.courseid  = c.courseid");
        var query2 = conn.QueryAsync<Course>("select * from Course c inner join Student s on c.courseid = s.courseid");
        var result1 = await query1;
        var result2 = await query2;
        lstJoin.Items.Clear();
        foreach (var item in result1)
        {
            string text = "Name: " + item.name + ", Course Id: " + item.courseid + ", Course Name : " + item.coursename;
            lstJoin.Items.Add(text);
        }

但&#34; item.coursename&#34;是错误,所以我无法显示它。然后,如果我在foreach中使用结果2更改result1,&#34; item.name&#34;将是错误。我应该怎么做才能展示它们?谢谢。

1 个答案:

答案 0 :(得分:0)

为什么不以经典方式进行?像带有命令文本的SQLiteCommand对象:

    strCommandText = "SELECT tbl1.*,tbl2.* FROM Table1 tbl1 INNER JOIN Table2 tbl2 ON tbl1.ID = tbl2.ID";

或者这是一个你需要以这种方式使用它的规范吗? 因为我在使用SQLite Helper文件时遇到了同样的问题。