SoapExtension.Initialize(Object) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
När det åsidosättas i en härledd klass kan ett SOAP-tillägg initiera sig själv med hjälp av de data som cachelagras i GetInitializer(LogicalMethodInfo, SoapExtensionAttribute) metoden.
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)
Parametrar
- initializer
- Object
den Object som returneras från GetInitializer(LogicalMethodInfo, SoapExtensionAttribute) cachelagrad av ASP.NET.
Exempel
I följande exempel visas hur du kan använda data som cachelagras under GetInitializer metoden.
// 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
Kommentarer
Ett SOAP-tillägg har tre möjligheter att initiera data och alla har olika syften:
Klasskonstruktor – Klasskonstruktorn anropas varje gång ett SOAP-tillägg instansieras och används vanligtvis för att initiera medlemsvariabler.
GetInitializer – Den här metoden anropas bara en gång, första gången en SOAP-begäran görs till en XML-webbtjänstmetod. Om ett anpassat attribut tillämpas på XML-webbtjänstmetoden GetInitializer anropas metoden. Detta gör det möjligt för SOAP-tillägget att fråga LogicalMethodInfo efter prototypinformation om en XML-webbtjänstmetod eller få åtkomst till tilläggsspecifika data som skickas av en klass som härleds från SoapExtensionAttribute. Returvärdet cachelagras av ASP.NET och skickas till efterföljande Initialize metoder. Därför kapslas initieringen som görs i i GetInitializer princip in i en engångsprestandaträff.
Initialize – Den här metoden anropas varje gång en SOAP-begäran görs till en XML-webbtjänstmetod, men har en fördel jämfört med klasskonstruktorn, eftersom den Object initierade i GetInitializer skickas till den.
Note
Du kan också lägga till ett SOAP-tillägg utan att härleda från SoapExtensionAttribute med hjälp <av soapExtensionTypes-elementet i en konfigurationsfil>. Mer information finns i <soapExtensionTypes-element> ochSOAP-meddelandeändring med SOAP-tillägg.