ADO.NET EF中多表查询的问题
头疼,查了很多有关资料,发现没有讲EF中多表联合查询返回结果集的,问问大家EF是否支持多表查询,如何支持那它应该返回什么类型的数据?例如我有学生表,成绩表,我要查询得到学生成绩联合查询后的结果。
------解决方案--------------------结贴率百分之零哦
如果有外键的话它会自动连接上的。。如果没有外键约束的话就得用join来连接了。
然后 select new{需要的列}
------解决方案--------------------select new {表1.字段....表2.字段}
返回的是匿名类的集合
------解决方案--------------------
3楼的不了解就不要清下结论哦
楼主问题描述太不清楚了,建议还是好好补一下EF的相关知识。
假如有一个Model,有两个EntitySet:Students、Scores,Student有属性StudentID、StudentName,Score表有ScoreID、Score跟StudentID,二表之间是一对一的关系。
(以上假设信息楼主应该给出来的,别老想动一动嘴巴就能让人能帮上你)
那么取关联数据:
ScoreEntities ctx = New ScoreEntities();
Student s = ctx.Students.First(n=>n.StudentID==ID);
s.ScoreReference.Load();
手动进行关联后可通过以下方式访问两个表的相关属性:
s.StudentID
s.StudentName
s.Student.Score.ScoreID
s.Student.Score.Score
EF提供了三种查询方式:Linq To Entities、QueryBuilder、Entitiy SQL
..........
............
自己看书去吧