我使用Ninject和NHibernate的ASP.NET MVC 3。將Ninject調用處置並關閉NHibernate Isession?
當DI的思考,我認爲誰得到資源的一個還確保將其關閉(在這種情況下Ninject應該負責)
但我不知道使用InRequestScope時Ninject是如何工作的。
我的代碼是:
Bind<ISession>().ToMethod(context => context.Kernel.Get<ISessionFactory>().OpenSession()).InRequestScope();
我打開一個會話,並把它放在我InRequestScope,但Ninject採取關閉我的ISession的時候纔出請求範圍?
你能解釋這是怎麼區別的http://stackoverflow.com/questions/5221620/nhibernate-dependency-injection-close-isession-適當請和/或考慮關閉這個 - 這個quesxztion有很多dups這就是爲什麼他們沒有一個適當的答案海事組織? – 2011-03-09 09:42:36
你提到的問題有兩個矛盾的答案,我在這裏得到了很好的答案,但現在它被刪除了嗎?也許你呢? – Luticka 2011-03-09 12:06:44
@Lutica:問題是至少有2個半問題+答案。 @Darin刪除了他作爲維護者之一(@Remo Gloor)指出他的答案不夠。 @Darin應該可能已經放棄並編輯了一段回憶,因爲他誤解了某些內容對於你們任何人都是一種學習體驗。如果我能夠刪除帖子,我當然不會 - 我會在答案中對其進行評論,以便修正或發佈改進版,如果沒有得到任何結果 – 2011-03-09 17:29:21