我正在用NHibernate创建一个windows窗体应用程序。这是一个MDI应用程序,因此用户可以同时打开多少个表单(可能很多)没有限制。这怎么能用(N)Hibernate完成?
对于大多数表格,我想要“确定”和“取消”按钮。两者都关闭表单,但“确定”也将修改的数据保存到数据库。这些表单可能非常复杂,而且这些修改可能会触及整个对象图形,添加一些对象,删除一些对象,并更改一些对象。如果可以根据需要自动检测并保持更改,而不需要手动跟踪每个更改,那就太好了。
什么是一个很好的方法来做到这一点?
其他信息:我可以制作任何我想要的数据库模式。我正在使用MSSQL 2008,目前已经决定了GUID主键(带有guid.comb生成器)和一个TIMESTAMP列以实现乐观并发。
我想简单地设置一个NHibernate的ISession
到Never
的FlushMode
,做所有的修改需要,然后调用Flush()
如果用户点击OK。 But that didn't work.
并且在用户使用表单工作的整个过程中让交易保持打开状态?想想锁定! – 2010-03-15 14:48:39