是否可以使用EF 4.0映射下面的POCO類?EF 4.0 - 使用私有字段映射到只讀屬性
public class MyClass
{
private string _myData;
public MyClass()
{ }
public MyClass(string myData)
{
_myData = myData;
}
public string MyData
{
get
{
return _myData;
}
}
}
在NHibernate的,我認爲這是可能的,當我使用的訪問屬性像映射:
<class name="MyClass" table="MyTable">
<property name="MyData" access="field.camelcase-underscore" column="MyCol" type="string" length="50" />
</class>
我不知道是否有某些訪問相當於EF 4.0嗎?目前,我能夠映射類只如果我添加受保護的setter到MyData的屬性:
public string MyData
{
get
{
return _myData;
}
protected set
{
_myData = value;
}
}
它的工作原理,但對傳統的類就意味着更新不具備制定者的所有屬性。
編輯:
我已經更新了最後的代碼示例,因爲它也不會帶私人二傳手工作。安裝者必須至少受到保護。如果二傳手是私人或不存在以下異常被拋出:
System.InvalidOperationException: 映射和元數據信息可能 無法發現的EntityType 「MyNamespace.MyClass」。
沒有什麼私人二傳手發生什麼呢? – 2010-08-29 16:18:32
我在問題中添加了說明。 – 2010-08-29 16:44:53
Dang,System.InvalidOperationException!我有點希望它只是不包括它,我可以使用私人領域,使東西不堅持:http://stackoverflow.com/questions/3595404/how-not-persist-property-ef4-code-first – 2010-08-29 17:10:44