SoapExtension.Initialize(Object) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
파생 클래스에서 재정의된 경우 SOAP 확장에서 GetInitializer(LogicalMethodInfo, SoapExtensionAttribute) 메서드에 캐시된 데이터를 사용하여 자신을 초기화할 수 있습니다.
public:
abstract void Initialize(System::Object ^ initializer);
public abstract void Initialize (object initializer);
abstract member Initialize : obj -> unit
Public MustOverride Sub Initialize (initializer As Object)
매개 변수
- initializer
- Object
ASP.NET에 의해 캐시된 Object에서 반환되는 GetInitializer(LogicalMethodInfo, SoapExtensionAttribute)입니다.
예제
다음 예제에서는 메서드 중에 GetInitializer 캐시된 데이터를 사용하는 방법을 보여 줍니다.
// Receive the file name stored by GetInitializer and store it in
// a member variable for this specific instance.
public:
virtual void Initialize( Object^ initializer ) override
{
filename = dynamic_cast<String^>(initializer);
}
// Receive the file name stored by GetInitializer and store it in
// a member variable for this specific instance.
public override void Initialize(object initializer) {
filename = (string) initializer;
}
' Receive the file name stored by GetInitializer and store it in a
' member variable for this specific instance.
Public Overrides Sub Initialize(initializer As Object)
m_filename = CStr(initializer)
End Sub
설명
SOAP 확장에는 데이터를 초기화할 수 있는 세 가지 기회가 있으며 모두 다른 용도로 사용됩니다.
클래스 생성자 - SOAP 확장이 인스턴스화될 때마다 클래스 생성자가 호출되며 일반적으로 멤버 변수를 초기화하는 데 사용됩니다.
GetInitializer - 이 메서드는 XML 웹 서비스 메서드에 SOAP를 처음 요청할 때 한 번만 호출됩니다. 사용자 지정 특성이 XML 웹 서비스 메서드에 적용되면 메서드가 GetInitializer 호출됩니다. 이렇게 하면 SOAP 확장에서 프로토타입 정보에 대한 XML 웹 서비스 메서드를 심문 LogicalMethodInfo 하거나 파생 클래스에서 SoapExtensionAttribute전달된 확장 관련 데이터에 액세스할 수 있습니다. 반환 값은 ASP.NET 캐시되고 후속 Initialize 메서드로 전달됩니다. 따라서 초기화는 GetInitializer 기본적으로 일회성 성능 적중으로 캡슐화됩니다.
Initialize- 이 메서드는 XML 웹 서비스 메서드에 SOAP 요청이 수행될 때마다 호출되지만 초기화된 메서드가 이 메서드에 GetInitializer 전달된다는 측면에서 Object 클래스 생성자에 비해 이점이 있습니다.
참고
구성 파일에서 SoapExtensionAttribute 요소를 사용하여 <soapExtensionTypes> 파생하지 않고 SOAP 확장을 추가할 수도 있습니다. 자세한 내용은 SOAP 확장을 사용하여 요소 및 SOAP 메시지 수정을 참조 <soapExtensionTypes> 하세요.