EntityFramework Code First对属性getter / setter做了什么?

时间:2012-08-15 00:00:58

标签: c# .net entity-framework ef-code-first

在使用Code First时,EntityFramework到底映射具有自定义getter和setter的属性究竟是什么?

它是否只是在序列化时调用属性的getter,而在反序列化时调用setter?所以我可以做一些傻事......

public class Foo {

    public DateTime TimeAccessed {
        get {
            return DateTime.Now;
        }
        set {
            TimeDeserialized = DateTime.Now;
        }
    }

    [NotMapped]
    public DateTime TimeDeserialized { get; private set; }
}

注意我对使用上述代码或类似内容并无实际兴趣......仅供说明之用。

此外,在使用Code First映射属性时,是否所有getter和setter都需要public

1 个答案:

答案 0 :(得分:13)

是; EF确实打电话给吸气者和二传手 EF实际上不可能以任何其他方式工作。

没有;他们甚至可以是私人的。 (虽然房产本身必须公开)