连接的Linq选择中丢失数据Annonation

时间:2017-02-20 06:02:36

标签: c# linq entity-framework-6 data-annotations

我有两个表作为主表和详细信息。我设置了一些属性,如: [DisplayName="Customer Name"]和...... 当我填充 Datagridview 来源或报告服务来源或...以及所选列表时,我可以使用这些属性并设置我的标题列以及其他许多有用的想法。但如果我想要Flatt我的主要细节并写下linq选择如下:

  var x = from m in master 
  join d in detail on m.id equal d.masterId
  select new {d.Id , d.Name , m.Date, m.Customer}

我无权访问已定义的属性。 我能做什么 ? 我不喜欢为每个选择

编写ViewClass

1 个答案:

答案 0 :(得分:0)

为此,您必须创建一个新的模态/类,如 MasterDetails ,它将包含您在页面中想要查看的所有属性,并在新的 MasterDetails上应用属性班然后再写一个新的linq。

  var x = from m in master 
  join d in detail on m.id equal d.masterId
  select new  MasterDetails {Id=d.Id ,Name= d.Name ,Date= m.Date,Customer= m.Customer}

希望它对你有用。