SOAP이 VS2008에서 완전히 다시 처리 된 것처럼 보입니다.
public class classname : SoapExtension {
public override object GetInitializer(LogicalMethodInfo methodInfo, SoapExtensionAttribute attribute) {
throw new NotImplementedException();
}
public override object GetInitializer(Type serviceType) {
return null;
}
public override void Initialize(object initializer) {}
public override void ProcessMessage(SoapMessage message) {
switch (message.Stage) {
case SoapMessageStage.BeforeSerialize:
var header = GetHeader(); // Returns a class implementing SoapHeader
message.Headers.Add(header);
break;
case SoapMessageStage.AfterSerialize:
break;
case SoapMessageStage.BeforeDeserialize:
break;
case SoapMessageStage.AfterDeserialize:
break;
}
}
}
그리고 당신의 설정 파일에 클래스를 등록 :
....
<webServices>
<soapExtensionTypes>
<add type="namespace.classname, namespace" priority="1" group="Low"/>
</soapExtensionTypes>
</webServices>
</system.web>
는 SoapExtension를 구현하는 클래스를 만들 필요가 VS2008에서 같은 수행