实体框架:抽象类上的私有二传手

时间:2009-05-27 18:25:28

标签: c# .net entity-framework

我们有一个抽象类,其中所有属性都有私有的setter。在我们的具体派生类中,代码生成器正在创建一个静态“create”方法,该方法尝试设置抽象类的属性。显然这是因为setter是私有的。

我们如何抑制“创建”方法的创建?

1 个答案:

答案 0 :(得分:1)

在v3.5中,我认为你不能仅仅压制这一部分。但是,它只会尝试设置不可为空/必需的属性。所以我看到了一些选择。没有一个是理想的。

  1. 继续使用v4.0,您可以在其中自定义codegen。
  2. 完全放弃EF codegen和use a custom data class
  3. 使属性可以为空。
  4. 不要将属性放在父类型上。将它们放在子类型上并使用接口进行多态性。
  5. 不要将属性设为私有。