5
我正嘗試使用連接從另一個表中獲取單個屬性,該表沒有映射。我的問題是,當我創建一個我的映射實體的新實例並保存它時,我得到一個關於嘗試插入到我的未映射表(它試圖將null插入非空列)的錯誤。我認爲使用.ReadOnly()會阻止nhibernate嘗試插入到我未映射的表中,但似乎不起作用。流利的nHibernate Join正在插入到已連接的表中
我的映射是這樣的:
// Join _UnMapped table with Mapped table to get the property
Join("_UnMapped", x =>
{
x.Fetch.Join();
x.KeyColumn("UnMappedFK");
x.Map(y => y.Property, "Property")
.Not.Nullable()
.ReadOnly();
});
我曾想過創建一個視圖和映射到,要獲得此屬性,但如果我可以,我寧願通過映射做到這一點。任何幫助(或如何加入應該如何解釋)將不勝感激!
因爲它解決了我解決了一些其他問題後設置逆工作。但我不完全明白爲什麼。我認爲這只是一個標誌,告訴nhibernate關係中的哪個實體擁有FK。在這種情況下,我的映射表是具有FK的映射表(即inverse = false right?)。你的鏈接不適合我,所以不幸的是這並不能幫助我。 –
@Ben不知道爲什麼這個鏈接不適合你,它對我來說工作得很好。但是「反向」在這裏只是一個糟糕的命名。從文檔中:inverse(可選 - 默認爲false):如果啓用,Hibernate不會嘗試插入或更新由此連接定義的屬性。 – cremor