我正在使用C#編寫的ASP.NET Web應用程序部署到IIS/Windows Server 2008 R2。應用程序使用NHibernate與在聯網的unix服務器上運行的Oracle數據庫進行交互。寫入數據庫似乎沒有效果
看來,由應用程序寫入數據庫寫入沒有影響。
如果我手動編輯Oracle數據庫中的記錄值,新值將由應用程序反映出來。但是,如果我嘗試使用應用程序的自定義「保存」功能更改值,則更改不會反映在數據庫中。看起來讀取成功,但寫入失敗。
爲什麼寫道似乎失敗了?
的更多信息:
無明顯的錯誤信息被接收(即應用程序不會拋出異常,似乎繼續運行,就好像一切都很好)。
此應用程序的另一個實例正在IIS/Windows Server 2003上運行。此實例可以寫入Oracle數據庫(即可以在單擊「save」後使用數據庫查看器立即在數據庫中看到更改)。
該代碼在2003/2008應用程序中幾乎相同。但是,在2008服務器上,我使用的是更新版本的Oracle庫,並將Visual Studio項目的架構從'Any CPU'定位到'x86'(2008服務器是64位,而2003服務器是32位)位)。
免責聲明:
我有IIS,NHibernate的,Oracle數據庫,在Windows Server 2003和Windows Server 2008 R2的工作經驗非常有限。但是,我的確有更多的C#,ASP.NET Web應用程序,Visual Studio和MSSQL數據庫的使用經驗。
誰知道。請顯示持久性操作的一些代碼。 – OldProgrammer
作爲一個純粹的占卜,聽起來像你沒有提交交易。 –
在所有應有的尊重下,在2003服務器上運行的應用程序使用與2008服務器上運行的應用程序完全相同的持久性代碼,並且寫入肯定在2003服務器上運行,所以我不相信這是代碼問題(除非因爲不同的環境需要書寫不同,但對我來說似乎不太可能)。如果我對此有錯,請糾正我。 – yohosuff