2011-05-09 159 views
0

我有Asp.Net MVC2(.Net 4.0)網站。它使用NHibernate 3.0 + Fluent NHibernate。我想將它部署在遠程服務器上。
當我使用遠程數據庫的連接字符串在本地運行它時,一切正常。當我部署它並使用瀏覽器時,它可以正常工作。我也可以在網站上註冊新用戶(它會在會員表格和附加表格中創建記錄)。我可以看到我在註冊時輸入的所有用戶信息。這一刻,一切都很好。
然後我嘗試修改配置文件中的一些信息,但頁面刷新後(!!!)我看到舊數據。所以,數據庫中沒有任何變化。真是......「嗯,插入工作,但不更新」, - 我想。
然後我嘗試使用Log4Net設置日誌記錄,但它不創建日誌文件。需要注意的是,一切都在當地正常工作。
我發現這篇文章"Security" problem with NHibernate on deployed web application,但看在主機的控制面板我發現「CAS信任級別:完整」。
我絕望了。發佈你的所有想法,一切都可能有用。ASP.NET網站部署問題

回答

0

所以,我已經自己解決了。問題出現在NHibernate中。我使用每個請求開放會話的最佳做法,並且應該在每個HTTP會話結束時刷新NHibernate會話。平淡無奇,但事實並非如此。我在我的SaveOrUpdate()Update()方法中添加了session.Flush(); session.Clear();。現在它正常工作。
所以,我不明白這樣的行爲。有任何想法嗎?