在C中的对象交易#
问题描述:
我想知道是否有办法在对象上进行交易。 我对这个问题提出了以下情况:在C中的对象交易#
我们将我们的对象传递给我们的数据访问层。我们使用了transactionscope来确保数据库不被破坏。
在该过程中,可以更改对象(datechanged,拥有者等等)。但是,如果事务失败,事务处理器将回滚数据库中的事务,但不在您的对象上。
这样你的对象(通过引用传递)有点损坏。
我希望有一个解决方案。
答
当你使用TransactionScope时,它会明确地告诉你它什么时候回滚(通过给你一个错误)。如果发生这种情况,除非从源头清理干净,否则不应继续处理对象。
答
我真的怀疑你可以在你的类对象上有事务。也许你可以自定义你的代码来维护另一个实例的状态,并在你的回滚语句后恢复它。 HTTP:/
+0
这是纪念模式。 – user29964 2009-12-04 09:43:37
答
我你用一个好还是映射器像NHibernate的,而不是一个自定义的数据层,这将是照顾你
类似的问题以前已经问/stackoverflow.com/questions/1765615/transactions-for-c-objects – 2009-12-04 08:12:10
+1好问题 – 2009-12-04 08:15:19