SoapExtension.Initialize(Object) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Quando substituído em uma classe derivada, permite que uma extensão SOAP se inicialize usando os dados armazenados em cache no GetInitializer(LogicalMethodInfo, SoapExtensionAttribute) método.
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
O Object retornado de GetInitializer(LogicalMethodInfo, SoapExtensionAttribute) armazenado em cache por ASP.NET.
Exemplos
O exemplo a seguir demonstra como você pode usar os dados armazenados em cache durante o 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
Comentários
Uma extensão SOAP tem três oportunidades para inicializar dados e todas elas têm propósitos diferentes:
Construtor de classe – O construtor de classe é chamado sempre que uma extensão SOAP é instanciada e normalmente é usada para inicializar variáveis de membro.
GetInitializer - Esse método é chamado apenas uma vez, a primeira vez que uma solicitação SOAP é feita a um método de serviços Web XML. Se um atributo personalizado for aplicado ao método de serviço Web XML, o GetInitializer método será invocado. Isso permite que a extensão SOAP interrogue o LogicalMethodInfo método de um serviço Web XML para obter informações de protótipo ou acessar dados específicos de extensão passados por uma classe derivada de SoapExtensionAttribute. O valor retornado é armazenado em cache por ASP.NET e passado para métodos Initialize subsequentes. Portanto, a inicialização feita é GetInitializer encapsulada essencialmente em um impacto de desempenho único.
Initialize - Esse método é chamado sempre que uma solicitação SOAP é feita a um método de serviço Web XML, mas tem uma vantagem sobre o construtor de classe, pois o Object inicializado GetInitializer é passado para ele.
Note
Você também pode adicionar uma extensão SOAP sem derivar usando o <elemento soapExtensionTypes> em um arquivo de SoapExtensionAttribute configuração. Para obter detalhes, consulte <o elemento soapExtensionTypes> e a modificação de mensagem SOAP usando extensões SOAP.