4
我是WCF的新手,我一直試圖在Web服務中使用會話狀態,我設法使用numberofarticles。有狀態的WCF Web服務
但是這些文章都遵循.net 2.0方法,因爲默認情況下新的WCF服務引用沒有CookieContainer。
什麼是使用有狀態網絡服務的新的學校方式?
(不使用向後方法,如代碼生成與Wsdl.exe工具或2.0「添加Web服務」的路線。)
我是WCF的新手,我一直試圖在Web服務中使用會話狀態,我設法使用numberofarticles。有狀態的WCF Web服務
但是這些文章都遵循.net 2.0方法,因爲默認情況下新的WCF服務引用沒有CookieContainer。
什麼是使用有狀態網絡服務的新的學校方式?
(不使用向後方法,如代碼生成與Wsdl.exe工具或2.0「添加Web服務」的路線。)
一個字:切勿!
只要有可能,服務應該是無狀態的 - 它讓生活變得更容易。
如果您需要保持呼叫之間的狀態,請將其置於持久容器中,例如,一個數據庫,並報告下一次調用時可以找到它的ID。
馬克
如果你真的必須保持會話(真的嗎?想想看兩次 - 更好的是:三次) - 然後WCF提供某些綁定每個會話的電話(協議)。
最接近ASMX webservices的basicHttpBinding
不支持會話。對於面向互聯網的應用程序,您需要使用wsHttpBinding
,對於面向內部網的服務,您需要使用netTcpBinding
。
查看有關使用WCF會話的MSDN docs。
FYI: 老學校的網絡服務的使用作爲一種類型: System.Web.Services.Protocols.SoapHttpClientProtocol 與WCF爲: System.ServiceModel.ClientBase – 2009-11-05 12:36:52