实体框架 - 如何修改生成的基础构造函数(DBContext)

时间:2012-01-06 14:15:04

标签: entity-framework entity-framework-4.1

我们必须在我们的环境中处理生产和测试连接字符串。 Database First Solution。

我有一个非常挑剔的客户端,对于您可以使用带参数的第二个构造函数创建部分类,或者使用空参数构造函数从指定的Entities类继承而不满意。

他声称开发人员可能会在不知不觉中使用基础构造函数。

有没有办法修改生成的构造函数,或者设置一个选项,以便不生成基础构造函数,所以我们可以编写自己的构造函数?

谢谢!

1 个答案:

答案 0 :(得分:3)

如果您使用T4模板生成上下文,则可以执行任何操作。例如:

  • 密封上下文
  • 从生成的上下文类中删除部分关键字
  • 直接在模板中定义您想要的构造函数

您唯一需要做的就是修改ModelName.Context.tt模板。

无论如何,您的客户应该专注于业务需求,而不是关于编码的愚蠢假设。

  

他声称开发人员可能会在不知不觉中使用基础构造函数。

我声称这可能会发生,但如果您的应用程序经过正确测试,并且您为新的团队成员或初级开发人员进行代码审查,那么这不是问题。