我在EF 4中遇到了poco类的问题。
我有一个Order实体,它包含一个Customer实体的外键。
因此,Order类具有Customer类型的导航属性。
看起来像这样:
public class Order
{
public virtual int Id { get; set; }
public virtual CustomerId { get; set; }
public virtual Customer customer { get; set;}
…
}
当我加载订单时,导航属性客户是正确的,但如果CustomerId属性更改,则不会使用新客户刷新导航属性。
如果我在EF上下文中调用DetectChanges()方法,则会刷新导航属性。
我已经读过,所有属性都标记为虚拟,关系同步是自动的,但在这里并非如此。
我哪里出错了?
感谢您的帮助
答案 0 :(得分:0)
这意味着由于某种原因,没有为您的实体创建代理。看一下这篇博客文章 - http://blogs.msdn.com/b/adonet/archive/2009/12/22/poco-proxies-part-1.aspx。以下是创建代理的要求:http://msdn.microsoft.com/en-us/library/vstudio/dd468057(v=vs.100).aspx。不得禁用代理创建。