我试图使用Entity Framework实现工厂模式,但是无论它们是私有的还是公共的,Entity Framework似乎都会调用每个成员的默认构造函数和设置器。
有没有办法让Entity Framework调用我的Object.Create()
呢?
编辑:
以下是我的类的简化示例。我需要Entity Framework调用静态的Create()方法而不是构造函数。
public class Foo
{
public Name { get; set; }
public static Foo Create()
{
var newFoo = new Foo();
newFoo.Init();
return newFoo;
}
public void Init()
{
Name = "You know, on second thought, I want the name to be this instead.";
}
private Foo()
{
Name = "Hello Stack Overflow!";
}
}
static Create()
在Init()
更改类之后返回该类的实例。 是否有一种方式可以强制Entity Framework调用Init()? - Charles W