我们正在尝试将Microsoft Sync Framework实现到我们的应用程序中,该应用程序使用NHibernate持久化它的域.
我们遇到的一个问题是,在Sync Framework更改了您的初始数据库结构(添加影子表和触发器)之后,当您尝试将对象插入数据库时,NHibernate似乎会因为抛出toomanyrowsaffectedexception而感到不安.
我发现这篇文章的解决方案是在每个更新语句周围添加SET NOCOUNT ON和OFF,但由于表结构由nhibernate自动生成,同步触发器由Sync Framework自动生成,因此手动调整所有触发器实际上不是一个选项.
http://www.codewrecks.com/blog/index.php/2009/03/25/nhibernate-and-toomanyrowsaffectedexception/
我尝试按照此问题中的描述设置sql server 2008属性NOCOUNT:哪里是设置NOCOUNT的最佳位置? 但是这导致了StaleStateException(受影响的行数为-1,预期为1).
您是否知道是否有办法配置同步框架以在其触发器中自动设置这些NOCOUNT语句?或者有没有办法告诉NHibernate期望更多/更少的行被更改?或者也许你们中的任何人都有一个自动脚本来将这些NOCOUNT语句添加到同步框架的触发器中.
Thx提前!