SQLite使用sqlite-net加入Windows 8 Metro C#

Ber*_*chi 5 c# sql join microsoft-metro windows-8

我正在使用C#和SQLite作为Windows-8-Metro-App的数据库.我想使用Join-Command,但不知道如何读取给定的返回数据.这不起作用:

db.Query<Person>("SELECT * FROM Person, Job WHERE Person.JobID = Job.ID");
Run Code Online (Sandbox Code Playgroud)

这没有实现:

db.Query<Person, Job>("SELECT * FROM Person, Job WHERE Person.JobID = Job.ID");
Run Code Online (Sandbox Code Playgroud)

有人知道如何做到这一点?

pod*_*ska 7

连接很好,如果过时 - 你应该使用更新的语法

 SELECT * FROM Person INNER JOIN Job ON Person.JobID = Job.ID
Run Code Online (Sandbox Code Playgroud)

您的问题出在您返回的内容中 - 您正在返回Person数据和Job数据 - 因此您需要创建一个与您要返回的数据结构相匹配的类 - 或者只返回一个人或一个作业.

 db.Query<Person>("SELECT Person.* FROM Person INNER JOIN Job ON Person.JobID = Job.ID");           
 db.Query<Job>("SELECT Job.* FROM Person INNER JOIN Job ON Person.JobID = Job.ID");
Run Code Online (Sandbox Code Playgroud)