2017-03-01 34 views
0

我目前對我的ASP.NET Web應用程序存在問題。當我嘗試登錄帳戶時,出現以下錯誤消息(這很常見,但我還沒有找到解決方案)。PostgreSQL服務器通過ASP.NET應用程序切斷登錄連接

An existing connection was forcibly closed by the remote host. 
[...] 
Unable to read data from the transport connection 
[...] 
The provider did not return a ProviderManifestToken string. 

該消息消失,當我重新加載頁面時,該應用程序工作正常後。但是當我獨自放置大約10分鐘時,我再次看到錯誤。這就是爲什麼我認爲PostgreSQL服務器正在進入某種「睡眠」模式,它無法正確回答請求。但後來我注意到它只發生,當我想要登錄時,其他每個頁面,我從數據庫接收數據的工作都很好,無論它處於非活動狀態多長時間。代碼被剪掉,它發生的地方是來自賬戶控制器中的默認代碼,我沒有碰到這個。

var result = await this.SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: false); 
var user = this.db.AspNetUsers.FirstOrDefault(u => u.Email == model.Email); 

調試一步一步地將我引向Dispose方法,它似乎在SignInManager仍在接收數據的同時處理它。我不知道,要深入挖掘,找出造成這個錯誤的原因。我還檢查了我的Postgres用戶的連接限制(沒有),並在連接字符串中設置較高的超時值。

pgAdmin II在下面的錯誤消息中提供了以下錯誤消息,當我不與數據庫交互幾分鐘時,似乎與上述錯誤有關,因此我假定它與數據庫相關的錯誤,而不是編碼問題。

enter image description here

回答

1

這可能是幾件事。像破碎的指數。或者在本地計算機和服務器之間中斷數據文件或postgres的後代版本。

+0

我的機器上安裝的版本的確有區別。我正在做一些研究,如果這是reaseon,謝謝你的想法!我讓你保持最新狀態,如果是解決方案:-) –

+0

問題依然存在 –

相關問題