2009-07-27 111 views
2

我在我的應用中使用了一個Web服務,它需要設置一個特定的Cookie來訪問它的方法。向Web服務端口客戶端添加cookie

我在使用wsdl.exe工具創建的服務中使用了生成的包裝類。使用該方法一切正常。

// this is the instance of object generated with wsdl.exe 
WSWrapper service = new WSWrapper(); 

// set cookie 
service.CookieContainer = new CookieContainer();  
Cookie cookie = new Cookie(name, value, path, domain); 
service.CookieContainer.Add(cookie); 

// run method requiring cookie to be set 
service.Test(); 

現在我想用服務引用而不是預先生成的類來做類似的事情。我添加了Web引用,但在服務引用端口客戶端中似乎沒有生成CookieContainer(或任何類似的東西)。

有誰知道如何添加一個cookie到該客戶端?

回答

0

我解決了這個問題。我沒有創建服務引用,而是添加了Web引用,生成的客戶端擁有預生成類的所有屬性。

4

儘管生成代理svcutil.exe有優勢。

現在可以通過app.config控制客戶端保存並返回服務器返回的Cookie(以前只需添加CookieContainer即可完成)。添加allowCookies="true「到basicHttpBindingbasicHttpsBinding爲綁定屬性。

另外也可以使用WCF配置編輯器做同樣的。