我正在使用
首先使用EF 6.1.3和Visual Studio Community 2017的数据库。
我想做什么
我希望EF6可以生成模型类,但是我希望能够对其进行调整,即使在从数据库更新模型后,更改也可以保留。
我可以在早期版本的EF中做到这一点。我该如何使用EF 6?
更早
在早期版本的Entity Framework中,我曾经禁用默认代码生成策略,然后添加了一个代码生成器,该代码生成器将为我提供POCO,而不是手写它们。
然后,我可以调整POCO,即使我从数据库更新了模型以获取更多数据库对象,如果我没记错的话,POCO生成器也不会触摸我的旧手写POCO并为新模型生成POCO。
如果我在要手写POCO的对象上添加了新的属性/字段,它也将更新我的手写POCO,并放入新的字段/属性。
现在
<DesignerProperty Name="CodeGenerationStrategy" Value="None" />
现在,我看不到将代码生成策略设置为无的方法。当我查看EDMX标记时,我看到代码生成策略已经具有值None
,但是当我查看设计器属性时,它显示代码生成策略为唯一/禁用的属性,其值为 T4 。
如果在删除先前生成的上下文和实体类并用自己的POCO替换它们之后,如果我尝试为POCO添加代码生成器,那么我会看到这两个生成器,每个版本分别用于EF的版本5和6。 / p>
如果我选择版本6生成器,它将覆盖我先前拥有的所有内容,就像它警告在其生成的.cs
文件之一中写入的注释一样。
我如何保留我的POCO并吃掉它?