SoapExtension.Initialize(Object) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cuando se reemplaza en una clase derivada, permite que una extensión SOAP se inicialice utilizando los datos almacenados en caché en el método 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)
Parámetros
- initializer
- Object
Object devuelto por el método GetInitializer(LogicalMethodInfo, SoapExtensionAttribute) almacenado en caché por ASP.NET.
Ejemplos
En el ejemplo siguiente se muestra cómo puede usar los datos almacenados en caché durante el GetInitializer método .
// 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
Comentarios
Una extensión SOAP tiene tres oportunidades para inicializar datos y todas tienen diferentes propósitos:
Constructor de clase: se llama al constructor de clase cada vez que se crea una instancia de una extensión SOAP y se usa normalmente para inicializar variables miembro.
GetInitializer - Este método se llama una sola vez, la primera vez que se realiza una solicitud SOAP a un método de servicios web XML. Si se aplica un atributo personalizado al método de servicio web XML, se invoca el GetInitializer método . Esto permite a la extensión SOAP interrogar el LogicalMethodInfo de un método de servicio web XML para obtener información de prototipo o tener acceso a datos específicos de la extensión pasados por una clase derivada de SoapExtensionAttribute. El valor devuelto se almacena en caché mediante ASP.NET y se pasa a métodos posterioresInitialize. Por lo tanto, la inicialización realizada en GetInitializer se encapsula básicamente en un acierto de rendimiento único.
Initialize : se llama a este método cada vez que se realiza una solicitud SOAP a un método de servicio web XML, pero tiene una ventaja sobre el constructor de clase, en que el Object inicializado en GetInitializer se pasa a él.
Nota
También puede agregar una extensión SOAP sin derivar de SoapExtensionAttribute mediante el <soapExtensionTypes> elemento en un archivo de configuración. Para obtener más información, consulte <soapExtensionTypes> Modificación de elementos y mensajes SOAP mediante extensiones SOAP.