0
我有客戶端調用進入WCF服務,然後通過Fluent NHibernate查詢數據庫。WCF和NHibernate事務處理範圍
由於它是默認值(即每次調用),所以WCF保留。
而且在我的代碼我做這樣的事情:
using (_repository.DbContext.BeginTransaction()) {
try {
_repository.SavePerson(object);
_repository1.SaveAddress(object1);
} catch {
_repository.DbContext.RollbackTransaction();
throw;
}
}
因爲DbContext
是兩個_repository
和_repository1
相同。我需要在_repository1
上做回滾嗎?
此外,由於存儲庫中的Save方法,因此Session對象用於保存對象。
我需要知道的是, 這個Session對於兩個調用都是一樣的,還是他們是兩個不同的?我假設他們自從 以來一樣,我將它們作爲一個工作單元在交易範圍內分組。
此外,這與WCF調用是否協調,我是否需要處理來自WCF端的事務?
這是我的答案,應該有助於http://stackoverflow.com/a/15451070/168048 – szkra