使用NHibernate插入视图

时间:2012-03-13 21:31:08

标签: nhibernate view insert

如果想要插入视图,需要在NHibernate上设置以允许这样做。

无论

<generator class="identity" />

,也不

<generator class="native" />

允许插入。

我尝试这个时遇到的错误是“Null id”或“Null identifier”。

2 个答案:

答案 0 :(得分:1)

即使使用常规SQL命令也不能使用NHiberanate从视图中插入,更新或删除。视图专为只读目的而设计。 您应该以与视图类似的方式从原始表中为您的类建模,然后您可以对其进行任何CRUD操作。

答案 1 :(得分:1)

我从来没有这样做,但你尝试过分配: -

<generator class="assigned" />
  

任何修改,包括UPDATE,INSERT和DELETE语句,   必须仅从一个基表引用列。

有关详细信息,请参阅此处MSDN

如果您使用已分配,还有一件事,您必须通过调用ISession的Save()或Update()方法来显式指定NHibernate是否应保存或更新对象。