2012-04-16 41 views
3

我對我的WCF服務使用basicHttpBinding,並且有一個消息檢查器在某些情況下將響應代碼設置爲重定向。我發現WCF代理(由svcutil生成)自動嘗試遵循重定向。我如何防止這種情況發生?如何防止WCF代理跟隨重定向?

感謝, 普里亞

回答

0

可以從您的客戶端應用程序中引用的服務合同大會?如果是這樣,你可以擺脫生成的服務引用,並使用ChannelFactory在運行時啓動代理。

例如:

// Create service proxy on the fly 
var factory = new ChannelFactory<IMyServiceContract>("NameOfMyClientEndpointInConfigFile"); 
var proxy = factory.CreateChannel(); 

// Create data contract 
var requestDataContract = new MyRequestType(); 

// Call service operation. 
MyResponseType responseDataContract = proxy.MyServiceOperation(requestDataContract); 

在上面的例子中,IMyServiceContract是您的服務合同,並0​​和MyResponseType是數據的合同,您可以通過引用該服務還引用(它定義了組件使用這些類型)。