1

有没有办法接管实体框架类构建器?我希望能够拥有自己的类构建器,这样我就可以创建一些属性以在实现时调用其他方法或使实体类部分化。

4

3 回答 3

3

实际上他们已经在部分课程中。见MSDN

于 2008-09-02T12:46:57.910 回答
2

System.Data.Entity.Design.EntityClassGenerator,是 VS 中用于从 .edmx 文件生成对象层的类型,它是 EdmGen.exe 用于从 .csdl 文件生成对象层的类型。下面我列出了可以影响生成代码的 3 种方式。第三个选项要求您自己调用 EntityClassGenerator。通过使用Sanjay 提出的这种技术,您可以让您的代码在类似于 SingleFileGenerator 的 VS 中自动运行。

  1. 通过部分类向类型添加代码
  2. 向生成的类调用的部分方法添加代码
  3. 挂钩代码生成事件以在生成属性和类型时将代码直接注入到属性和类型中。有关示例,请参阅 Danny 的博客文章
于 2008-09-29T05:29:17.277 回答
0

我要补充的是,您不仅可以将自己的类部分类附加到实体框架发出的部分类上,还可以写出由生成的代码创建的所有部分方法。

IE。会有很多部分方法代码被调用,但生成的代码中的方法本身并没有真正实现。为此,您可以编写一个部分方法来在属性更改等时捕获事件。这不是处理某些业务规则的糟糕方式。

于 2008-09-11T21:18:44.403 回答