1

我无法弄清楚我的实体的奇怪行为的原因。我正在使用从数据库生成的 POCO 类,以及 CTP5 引入的 dbContext 模板。在我的 DbContext 中,我有几个实体,当我使用它们时,它们是代理,除了一个。该实体与其他实体一样生成,它只有 3 个简单属性。我发现了一个线程相关What cause POCO 代理实体有时只能在 Entity Framework 4 中创建,但是我的所有实体都添加了 new 关键字,我从未将 CreateObject 用于任何对象。

Customer customer = new Customer();
customer.ID = "ID";
customer .Name = "Name";
repository.add(customer);
repository.Save();

为什么只是它不是代理?我还检查了作为此处定义的代理的要求http://msdn.microsoft.com/en-us/library/dd468057.aspx以及我应该在我的实体模型中定义的属性,并且都遵循指南。谢谢

4

1 回答 1

0

阅读 ADO.NET 博客,我发现一篇文章,他们说:“如果实体类型是密封的和/或没有虚拟属性,那么 Create 只会创建实体类型的实例”,所以我认为这就是我的实体的原因只有简单的属性不是代理。如果我错了,我很欣赏其他人的观点。

于 2011-03-11T10:57:35.630 回答