在調用SaveChanges
之前,烏鴉客戶端(IDocumentSession
)不會向服務器發送任何內容。所以它可以被認爲是一個UnitOfWork實現,對吧?IDocumentSession.SaveChanges()vs Transactions
我正確地認爲SaveChanges
和Transaction.Commit
之間的唯一區別是,如果在提交期間失敗了,後者會回滾所有更改?
在調用SaveChanges
之前,烏鴉客戶端(IDocumentSession
)不會向服務器發送任何內容。所以它可以被認爲是一個UnitOfWork實現,對吧?IDocumentSession.SaveChanges()vs Transactions
我正確地認爲SaveChanges
和Transaction.Commit
之間的唯一區別是,如果在提交期間失敗了,後者會回滾所有更改?
如果您正在執行單個操作,則不需要使用明確的事務,因爲SaveChanges
會導致隱式事務。
如果您使用System.Transactions
,則可以使用相同的事務執行多個操作,即多個SaveChanges
。 Raven將使用請求標頭通過http管理事務。
在文檔閱讀:http://ravendb.net/documentation/docs-api-transactions
jgauffin, 的SaveChanges()在一個事務中運行,所以如果你修改了多個文件,所有的人都將被保存,或者什麼都不會。 我們也支持System.Transactions,但通常不需要。
Kul med andra svenska RavenDb nissar;)(評論不多說,如果你不是瑞典人,就忽略它) – jgauffin