C# 是否可以将存储过程列映射回EF4中的实体?
我的数据库中有一个存储过程,它为一些用户返回一组数据。当然,userId作为这个集合的一部分返回。我已经将存储过程导入到实体框架模型中,并创建了一个新的复杂类型来存储结果C# 是否可以将存储过程列映射回EF4中的实体?,c#,.net,entity-framework,C#,.net,Entity Framework,我的数据库中有一个存储过程,它为一些用户返回一组数据。当然,userId作为这个集合的一部分返回。我已经将存储过程导入到实体框架模型中,并创建了一个新的复杂类型来存储结果 List<GetUserData_Result> x = context.GetUserData().ToList(); List<int> userids = x.Select(u => u.UserId); List x=context.GetUserData().ToList(); Lis
List<GetUserData_Result> x = context.GetUserData().ToList();
List<int> userids = x.Select(u => u.UserId);
List x=context.GetUserData().ToList();
List UserId=x.Select(u=>u.UserId);
有没有办法将复杂类型中的userId与已经存在的用户实体相关联?这将允许我说类似于,
result.User.EmailAddress
,即使我的存储过程没有返回电子邮件地址?大量戳MSDN表明,使用AssociationAttribute
类可能会实现这一点,但我至今还没有找到一个示例。这是一个不错的功能,但当前版本没有提供这一功能。复杂类型不能具有导航属性(因此它不能指向实体)。这意味着EF不会为您这样做,但您可以拥有自己的属性,该属性将以某种方式获取具有该Id的用户并返回它-很可能这会使您的复杂类型依赖于ObjectContext
,这是不好的
实体框架根本不使用AssociationAttribute
。它用于WCF RIA服务