Entity framework 从2个表中选择所有值
我有3个表code first、Entity framework 从2个表中选择所有值,entity-framework,linq-to-entities,entity-framework-5,entity-framework-6,Entity Framework,Linq To Entities,Entity Framework 5,Entity Framework 6,我有3个表code first、A和B以及一个联接表(链接A和B的一对多关系),我希望得到所有结果,而不是重复表A和B,并将其作为selectList返回: var a = from s in db.A join ss in db.B on s.ps_id equals ss.ss_id orderby s.ps_label select new SelectListItem { Text = s.ps_id.ToString(),
A
和B
以及一个联接表(链接A
和B
的一对多关系),我希望得到所有结果,而不是重复表A
和B
,并将其作为selectList返回:
var a = from s in db.A
join ss in db.B on s.ps_id equals ss.ss_id
orderby s.ps_label
select new SelectListItem
{
Text = s.ps_id.ToString(),
Value = s.ps_label
};
return a;
这只返回
A
表中的结果,也不返回B
中的结果。有什么不对,您对此的最佳做法和性能有何建议?好吧,您的选择不包括ss
中的任何属性,这是您能够从表B返回任何元素的唯一方法。此外,如果是一对多,那么为什么您提到有三个表,包括一个联接表,但代码中从未引用过第三个表?另外,您所说的“表不重复”是什么意思?我所说的“不重复…”意味着从查询中获得的结果不应包含重复。另外,第三个表只是一个连接表,用于引用表a和表B之间的关系,只有它们的ID,实际上,当我在解决方案asp.net mvc中首先将表作为代码导入时,这些表不会被导入。查看a
和B
的类定义会很有帮助,而且要知道B
的结果在哪里适合这个selectList,因为selectList项目
不包括B
中的任何内容。