有一天,我們遇到了從外部連接到CRM服務器的問題。當我們嘗試使用Web服務與CRM進行通信或使用一些Microsoft實用程序(如crmsvcutil.exe)時,服務器返回了以下錯誤:客戶關係管理2011 - 預計將保持連接狀態的服務被服務器關閉
退出程序時出現異常:底層連接已關閉:預期的連接保持活着被服務器關閉。
當我們使用CRM WS時,它似乎對於第一個查詢它正常工作並返回數據。但是,當我們把另一個查詢失敗。
有一天,我們遇到了從外部連接到CRM服務器的問題。當我們嘗試使用Web服務與CRM進行通信或使用一些Microsoft實用程序(如crmsvcutil.exe)時,服務器返回了以下錯誤:客戶關係管理2011 - 預計將保持連接狀態的服務被服務器關閉
退出程序時出現異常:底層連接已關閉:預期的連接保持活着被服務器關閉。
當我們使用CRM WS時,它似乎對於第一個查詢它正常工作並返回數據。但是,當我們把另一個查詢失敗。
我發現這也可以是,如果您嘗試從服務返回一個IEnumerable
到客戶端。
首先枚舉它(基本上調用ToList()
),以確保在程序流程繼續並且連接終止之前檢索到所有數據。
我們發現以下解決方案可以對您有用:
的問題已經在CRM上的IIS的設置。打開IIS並禁用「HTTP保持活動」選項(CRM網站 - > HTTP響應頭 - >設置常用頭...在動作面板中) - http://www.dotnetscraps.com/dotnetscraps/post/did-you-know-enable-http-keep-alive-in-iis-7-75.aspx
如果您不能禁用整個保持活動選項客戶關係管理,你可以更新你的代碼,使用客戶關係管理網絡服務(禁用代碼保持活動設置) - http://weblogs.asp.net/jan/archive/2004/01/28/63771.aspx
如果IFD啓用,那麼我們需要檢查wrt WPC令牌過期。