Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

Operation-Klasse

Stellt eine abstrakte Definition einer durch den XML-Webdienst unterstützten Aktion bereit. Diese Klasse kann nicht geerbt werden.

Namespace: System.Web.Services.Description
Assembly: System.Web.Services (in system.web.services.dll)

public sealed class Operation : NamedItem
public final class Operation extends NamedItem
public final class Operation extends NamedItem

Die Operation-Klasse entspricht dem WSDL-operation-Element (Web Services Description Language), das vom portType-Element eingeschlossen wird. Weitere Informationen über WSDL finden Sie in der Spezifikation unter http://www.w3.org/TR/wsdl/.

Im folgenden Beispiel wird eine typische Verwendung der Operation-Klasse veranschaulicht. Im Beispiel wird eine ServiceDescription akzeptiert, die keinen PortType besitzt, der das HTTP-POST-Protokoll unterstützt. Es wird eine PortType-Instanz hinzugefügt, die POST unterstützt, und ein neuer WSDL-Vertrag geschrieben.

using System;
using System.Web.Services.Description;
using System.Collections;
using System.Xml;

class MyOperationClass
{
   public static void Main()
   {
      ServiceDescription myDescription = ServiceDescription.Read("Operation_5_Input_CS.wsdl");
      // Create a 'PortType' object.
      PortType myPortType = new PortType();
      myPortType.Name = "OperationServiceHttpPost";
      Operation myOperation = CreateOperation
                         ("AddNumbers","s0:AddNumbersHttpPostIn","s0:AddNumbersHttpPostOut");    
      myPortType.Operations.Add(myOperation);
      // Get the PortType of the Operation. 
      PortType myPort = myOperation.PortType;
      Console.WriteLine(
         "The port type of the operation is: " + myPort.Name);
      // Add the 'PortType's to 'PortTypeCollection' of 'ServiceDescription'.
      myDescription.PortTypes.Add(myPortType);
      
      // Write the 'ServiceDescription' as a WSDL file.
      myDescription.Write("Operation_5_Output_CS.wsdl");
      Console.WriteLine("WSDL file with name 'Operation_5_Output_CS.wsdl' file created Successfully");
   }
   public static Operation CreateOperation(string myOperationName,string myInputMesg,string myOutputMesg)
   {
      // Create an Operation.
      Operation myOperation = new Operation();
      myOperation.Name = myOperationName;
      OperationMessage myInput = (OperationMessage)new OperationInput();
      myInput.Message =  new XmlQualifiedName(myInputMesg);
      OperationMessage myOutput = (OperationMessage)new OperationOutput();
      myOutput.Message = new XmlQualifiedName(myOutputMesg);

      // Add messages to the OperationMessageCollection.
      myOperation.Messages.Add(myInput);
      myOperation.Messages.Add(myOutput);
      Console.WriteLine("Operation name is: " + myOperation.Name);     
      return myOperation;
   }
}

import System.*;  
import System.Web.Services.Description.*;  
import System.Collections.*;  
import System.Xml.*;  

class MyOperationClass
{
    public static void main(String[] args)
    {
        ServiceDescription myDescription = ServiceDescription.
            Read("Operation_5_Input_JSL.wsdl");
        // Create a 'PortType' object.
        PortType myPortType = new PortType();
        myPortType.set_Name("OperationServiceHttpPost");
        Operation myOperation = CreateOperation("AddNumbers", 
            "s0:AddNumbersHttpPostIn", "s0:AddNumbersHttpPostOut");
        myPortType.get_Operations().Add(myOperation);
        // Get the PortType of the Operation. 
        PortType myPort = myOperation.get_PortType();
        Console.WriteLine("The port type of the operation is: " 
            + myPort.get_Name());
        // Add the 'PortType's to 'PortTypeCollection' of 'ServiceDescription'.
        myDescription.get_PortTypes().Add(myPortType);
        // Write the 'ServiceDescription' as a WSDL file.
        myDescription.Write("Operation_5_Output_JSL.wsdl");
        Console.WriteLine("WSDL file with name 'Operation_5_Output_JSL.wsdl' "
            + "file created Successfully");
    } //main

    public static Operation CreateOperation(String myOperationName, 
        String myInputMesg, String myOutputMesg)
    {
        // Create an Operation.
        Operation myOperation = new Operation();
        myOperation.set_Name(myOperationName);
        OperationMessage myInput = (OperationMessage)new OperationInput();
        myInput.set_Message(new XmlQualifiedName(myInputMesg));
        OperationMessage myOutput = (OperationMessage)new OperationOutput();
        myOutput.set_Message(new XmlQualifiedName(myOutputMesg));
        // Add messages to the OperationMessageCollection.
        myOperation.get_Messages().Add(myInput);
        myOperation.get_Messages().Add(myOutput);
        Console.WriteLine("Operation name is: " + myOperation.get_Name());
        return myOperation;
    } //CreateOperation
} //MyOperationClass

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
© 2013 Microsoft. Alle Rechte vorbehalten.