【发布时间】:2011-12-28 20:45:16
【问题描述】:
我将新的 EntityFramework 4.1 与 POCO 对象结合使用,并与 DataAnnotation 框架结合使用。
当EntityFramework需要创建代理类(比如延迟加载虚拟属性)时,我的所有数据注解都丢失了。有什么方法可以让我的 ModelMetaData 来自被代理的类,而不是代理类?
我知道我可以选择禁用代理创建 (context.Configuration.ProxyCreationEnabled),但这似乎是一个糟糕的答案。我想这应该已经解决了。
下面是一些示例代码:
public class Person
{
[Required, Display(Name = "Display That Name")]
public string DisplayName { get; set; }
}
然后在视图中我的模型元数据中,类型为:Person_9C92B92D56F6F4F0FB1686526D585438A05323CC72E457C2152796E8866297E1 (FullName = "System.Data.Entity.DynamicProxies.Person_9C92B92D56F6F4F0FB1686526D585438A05323CC72E457C2152796E8866297E1"}),我的元数据不见了,显示名称呈现在“DisplayName”而不是“Display That Name”。
有什么建议吗?
【问题讨论】:
标签: asp.net-mvc-3 entity-framework-4 entity-framework-4.1 data-annotations poco