2012-02-01 15 views
1

wsdlファイル(C#VS 2008)からプロキシクラスを生成しました webserviceはSOAPヘッダー内の要素を必要とします。 proxy.RequestSoapContext.Envelope.Headerを使用してこの要素を追加しようとすると、エラーが発生します。エンベロープはnullです。 ヘッダーのカスタム要素はどうやってできますか?生成されたSOAPプロキシにカスタムヘッダーを追加する

多くのありがとうございます。

答えて

0

この

EndpointAddressBuilder endpointAddressBuilder = 
      new EndpointAddressBuilder(proxy.Endpoint.Address); 
foreach (var item in headers) //headers is a Dictionary<string, string> 
    endpointAddressBuilder.Headers.Add(
      AddressHeader.CreateAddressHeader(item.Key, "nameSpace", item.Value)); 
proxy.Endpoint.Address = endpointAddressBuilder.ToEndpointAddress(); 

はこれがあなたのために働くホープ試してみてください。

+0

ありがとうございます。それはうまくいった!生成されたプロキシがsvcutil.exeではなくwsdl.exeからのものだったので、しばらく時間がかかりました。 – user1180360

+0

オフチャンスで、SOAPActionヘッダーが定義されていないというエラーが表示されます。何かご意見は ?私はWebサービスを初めて利用しており、オブジェクトなどの鉱山のフィールドを見つけます。 – user1180360

+0

これは自分自身に答えるものです。 WcfBindingからBasicに切り替えました。 – user1180360

関連する問題