在EF 4.1 RC1中,我有一个像Category
这样的简单实体,其属性ID为int。我可以将它设为只读属性并仍然可以使用吗?
如果没有,你如何保护PK / FK?
答案 0 :(得分:15)
一种方法是定义您的ID属性,如下所示:
public int ID { get; internal set; }
...然后在与“Category”类相同的程序集中定义您的DbContext类。它具有对属性的写访问权限,但程序集外的类不会。
如果需要在单独的程序集中定义DbContext,可以使用InternalsVisibleTo属性让程序集看到“Category”类的内部。