Entity framework 4 EF 4.0至EF 4.2,未找到DeleteObject,

Entity framework 4 EF 4.0至EF 4.2,未找到DeleteObject,,entity-framework-4,entity-framework-4.1,migration,Entity Framework 4,Entity Framework 4.1,Migration,我的原始项目是Asp.NETMVC2。 我将我的项目毫无问题地转换为MVC3 同时,我安装了EntityFramework 4.2。没问题 当我添加T4 Generate DBContext时,它开始变得复杂了。 这就正确地为我创建了T4,并将我的所有实体生成到他自己的POCO类中。太好了 当我构建我的项目时,我得到了大约400个错误。这里有一些例子 “mvn.Models.DBEntities”不包含的定义 “AddToLeaseConditionInfos”和无扩展方法 “AddToLeas

我的原始项目是Asp.NETMVC2。 我将我的项目毫无问题地转换为MVC3

同时,我安装了EntityFramework 4.2。没问题

当我添加T4 Generate DBContext时,它开始变得复杂了。 这就正确地为我创建了T4,并将我的所有实体生成到他自己的POCO类中。太好了

当我构建我的项目时,我得到了大约400个错误。这里有一些例子

“mvn.Models.DBEntities”不包含的定义 “AddToLeaseConditionInfos”和无扩展方法 “AddToLeaseConditionInfos”接受类型为的第一个参数 找不到“mvn.Models.DBEntities”您是否缺少使用 指令还是程序集引用

正如您在这里看到的,context.AddToLeaseConditionInfosobjCondition;不再有用了

DeleteObject上下文方法也是如此

context.ConvertionUnits.deleteObjectMyObjectConvertionUnit

有人有主意了


非常感谢。

您以前使用过ObjectContext API和默认代码生成器或EntityObject T4模板,但现在尝试将DbContext API与POCO DbContext T4生成器一起使用。这两者完全不兼容,因为它们代表不同的API。您必须使用与EFv4中相同的代码生成方法,这意味着升级不会给您带来任何额外的价值,或者您必须重写当前的数据访问代码以使用新的API。

EF 4.2只是EF 4.1,几乎没有错误修复。它不需要自己的标记。更改为DBContext API而不是使用默认的ObjectContext API是否有任何性能优势。我得到了270个实体,它们之间有很多关系。编译时间很长。我也有大的查询,这使得我的项目对于某些模块或页面来说非常慢。DbContext API只是ObjectContext API的简化包装器,因此理论上,由于额外的包装代码级别,性能可能会更差。