2017-01-04 226 views
1

,你可以把一個屬性,而不使用代理?因爲我需要得到它的價值。下面是映射:Unproxy屬性映射NHibernate的

public class MateriaPrimaMap : ClassMap<MateriaPrima> { 

    #region Construtor 

    public MateriaPrimaMap() { 
     Table("MATERIAPRIMA");   

     Id(m => m.Id).Column("MPR_CD"); 

     Map(m => m.Descricao) 
     .Column("MPR_DS") 
     .Not.Nullable().Length(30); 

     Map(m => m.Ativo) 
     .Column("MPR_ATIVO") 
     .Not.Nullable(); 

     Version(m => m.Version).Column("MPR_DT_LK").Generated.Always(); 
    } 

    #endregion 
}} 

圖片代理proprety: enter image description here

+0

你是指實例,id或內部屬性的值嗎? – Najera

+0

id字段已經是價值,我希望「Descricao」字段設置爲有效,而無需加入。 –

回答

1

如果您有代理,您可以通過INHibernateProxy參考here獲取標識符。

如果你沒有什麼應對的代理,只需要加一個額外的屬性和映射它們,一定要使用.Not.Insert().Not.Update()避免映射問題。

Map(m => m.DescricaoId) 
    .Column("MPR_DS") 
    .Not.Insert().Not.Update(); 

Map(m => m.AtivoId) 
    .Column("MPR_ATIVO") 
    .Not.Insert().Not.Update();