我尝试了几件事,但它不起作用。基本上,我想在EF MVC3上添加嵌套查询。实体框架MVC3的嵌套查询
SQL查询:
SELECT * FROM书其中Book_PK在
Book_PK是主键(从库 其中Library_Ref = '18bd9526-f3e9-4d5b-86cd-ccfea64b6f7b' 选择Book_Ref)图书
Book_ref是外键预订Library_Ref只是属性过滤Book_ref
我有2个表:通过外键连接的图书和图书馆。
我只有一个输入,它是id,但这不是库的主键。 我曾尝试:
`
School.Models.Entities.SchoolAll db = new Models.Entities.SchoolAll(); // db consists whole database
var temp = db.Books.Where(e => e.Book_PK.Contains(db.Libraries.Where(f => f.Library_Ref == id))).ToList();
// where id is one of the field of Library`
每个图书馆实体可以有一个或可预订的实体。所以,查询的结果应该是列表。我需要将这个列表保存到一个变量中。谁能帮我?
您好,感谢您的回复。我试过你的解决方案。但它有2个错误: - string.Contains(string)'有一些无效参数 - 无法从'System.Linq.IQueryable'转换为'字符串' 什么是错?结果可能是多个项目/实体。 Single是否合适? –
在EF LINQ查询您只能使用primitve类型,如int,字节串,...。你不能使用String.Contains方法,它 – Kisame
嗯..你有什么其他的方式来表示我上面的查询?所有涉及的属性都在varchar中。 –