我有一个拥有大约20个字段的庞大实体(Record)。其中一个是StatusID,它映射到Status表。我想拉出状态并在UI中显示每条记录。为此,我可以
创建自定义模型,编写带连接的LINQ并将所有必需属性映射到自定义模型
在记录模型中添加其他属性,在获取记录后,循环每条记录,获取状态并更新
我也不满意。因为它包含很多开销,无论是性能还是内存/维护。有没有更好的办法?我正在寻找像
这样的东西from x in db.Records inner join y in db.Status on x.StatusID equals y.StatusID select (x, y.Status) as x
答案 0 :(得分:1)
假设在数据库中设置了外键,您可以使用LINQ Include
运算符为您检索的每个Status
实体填充Record
导航属性:
using System.Data.Entity;
// ...
var records = db.Records.Include(x => x.Status);
然后,在您的用户界面中,您可以绑定到Status.Name
。