【发布时间】:2014-03-04 18:10:01
【问题描述】:
场景:
我有相当数量的实体作为 CodeFirst 中的模型映射到具有属性
[Column("str")]的数据库字段名。我有一堆报告服务报告(本地模式),其中的数据集映射到数据库字段名称。
由于字段名称的原因,我无法使用 ToList() 方法将 linq 查询的直接结果传递给那些报告。我能做的(我试图避免)是为每个对象输入select new;或通过不同的数据源运行每个查询。
问题:
我想知道使用 original 字段名称而不是属性名称的 IQueryable 对象是否有任何技巧。类似于动态select new。
任何建议将不胜感激。
【问题讨论】:
-
谢谢,但这与我所做的没有什么不同。我只是想知道 EntityFramework 是否有一个技巧来检索原始字段名称而不是实体属性。
-
不,没有。数据库列名称必须与属性名称匹配,或者您必须使用
Column属性使它们对齐。这是你唯一的选择。 -
谢谢@ChrisPratt。我认为您应该将其发布为答案。
标签: asp.net-mvc linq entity-framework reporting-services linq-to-entities