你能告訴我這是否可能嗎?
public class Person
{
public string Name { get; set; }
public int ID { get; set; }
}
填充一流的呼叫說,在一個名爲DataAccessLayer不同的組件正在做的人是在這樣調用實體代碼的人口的組件(這樣的人,它是人口密集的地方不在相同的程序集)
//下面的代碼將從數據讀取器等讀取,但剛剛這樣做//易於解釋。
Person p=new Person();
p.Name="tom";
p.id = 10;
人類現在可以被其他系統訪問,以允許他們能夠訪問人員。我想要的是防止其他系統能夠更改ID。能夠閱讀但不能寫。我是否需要創建另一個類來允許這個類,並且只將這個類暴露給另一個系統(即一個業務對象)(即ORM)?
我知道很多人會說只是使ID只讀。即
public int ID { get; }
,但如果我這樣做的話,我可以不填充從類似於上面的代碼中的ID,因爲在我的DataAccessLayer我將無法設置ID,因爲它是隻讀的。
感謝 尼爾
爲什麼不保留只讀屬性,並簡單地通過構造函數設置備份變量的值? – Pierreten 2010-11-19 08:56:24