我目前正忙于其中一个项目并需要一些帮助......
我在MSSQL中创建了一个表值函数,它返回一个表和一个计算列(Distance),并使用Entity Designer将它映射到Entity Framework 5中。
问题是我只能将结果映射为复杂类型或模型类中的实体。我需要使用实体中的一个导航属性,因此,我坚持使用我的实体类。
但是,因为列Distance不是我表中的真实列,所以我无法为表值函数的每个实体获取该值。
有没有办法解决这个问题?我已尝试使用分部类,但该函数不会将Distance列映射为我的属性。
这里有一些代码可以解释我在这里要做的事情:
IQueryable<Deal> deals = context.GetDealsByTypeLocationSearch(latitude, longitude);
foreach (var d in deals)
{
Console.Write(d.Distance);
}
当我尝试为我的实体Deal创建一个分部类时,距离值为null。
答案 0 :(得分:0)
只需解释答案here,请使用以下属性:
[DatabaseGenerated(DatabaseGeneratedOption.Computed)]
编辑:考虑使用数据库第一种方法,您是否考虑过调整DefiningQuery?