2011-04-04 1 views
1

я должен присоединиться к сущности, с тем чтобы получить некоторые данные в свойстваNhibernate/спящий режим Избегайте Вставить в присоединяемой таблицы или представления

<join table="XXVIEW" optional="true"> 
     <key column="ID_ENT" /> 
     <property name="Prop1" insert ="false" update ="false" /> 
     <property name="Prop2" insert ="false" update ="false" /> 
     <property name="Prop3" insert ="false" update ="false" />   
</join> 

Но когда я пытаюсь сохранить (вставка) она не becouse это попытаться вставить запись в XXVIEW с ID_Ent

Мне нужно, чтобы некоторые объекты в этом объекте получали от различных вычислений или объединений и имели в качестве отдельных свойств не свойство объекта, как компонент.

Могу ли я пропустить эту вставку ??? или я могу сопоставить эти свойства другим способом?

Эта недвижимость находится в объединенном подклассе. ТИА Adb

ответ

4

Вместо маркировки как опция, вы можете попробовать пометить его как обратный http://nhibernate.info/doc/nh/en/index.html#mapping-declaration-join

обратный (опционально - по умолчанию для ложных): Если включено, Hibernate не попытки вставить или обновить свойства , определяемый этим соединением.

<join table="XXVIEW" inverse="true"> 
+0

Ok, кажется, проходят тесты !!! спасибо вадим – Andreanta

0

Вы не можете сохранить запись на представлении, на вашем классе попробуйте добавить mutable='false'

<class name="ActorView" mutable="false"> 
... 

Если вы пытаетесь сохранить тогда я подозреваю, что вам нужно будет забыть о представлении и превратите его в полностью раздутый объект с определенными наборами.

+0

Мне нужно, чтобы сохранить сущность и другие свойства, но не те, получают из поля зрения, что читается только – Andreanta