Operation Class
Provides an abstract definition of an action supported by the XML Web service. This class cannot be inherited.
Assembly: System.Web.Services (in System.Web.Services.dll)
System.Web.Services.Description::DocumentableItem
System.Web.Services.Description::NamedItem
System.Web.Services.Description::Operation
| Name | Description | |
|---|---|---|
![]() | Operation() | Initializes a new instance of the Operation class. |
| Name | Description | |
|---|---|---|
![]() | Documentation | Gets or sets the text documentation for the instance of the DocumentableItem.(Inherited from DocumentableItem.) |
![]() | DocumentationElement | Gets or sets the documentation element for the DocumentableItem.(Inherited from DocumentableItem.) |
![]() | ExtensibleAttributes | Gets or sets an array of type XmlAttribute that represents attribute extensions of WSDL to comply with Web Services Interoperability (WS-I) Basic Profile 1.1.(Inherited from DocumentableItem.) |
![]() | Extensions | Gets the ServiceDescriptionFormatExtensionCollection associated with this Operation.(Overrides DocumentableItem::Extensions.) |
![]() | Faults | Gets the collection of faults, or error messages, defined by the current Operation. |
![]() | Messages | Gets the collection of instances of the Message class defined by the current Operation. |
![]() | Name | Gets or sets the name of the item.(Inherited from NamedItem.) |
![]() | Namespaces | Gets or sets the dictionary of namespace prefixes and namespaces used to preserve namespace prefixes and namespaces when a ServiceDescription object is constructed.(Inherited from DocumentableItem.) |
![]() | ParameterOrder | Gets or sets an array of the elements contained in the ParameterOrderString. |
![]() | ParameterOrderString | Gets or sets an optional Remote Procedure Call (RPC) signature that orders specification for request-response or solicit-response operations. |
![]() | PortType | Gets the PortType of which the Operation is a member. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | IsBoundBy(OperationBinding^) | Returns a value that indicates whether the specified OperationBinding matches with the Operation. |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
The Operation class corresponds to the Web Services Description Language (WSDL) operation element enclosed by the portType element. For more information about WSDL, see the specification at http://www.w3.org/TR/wsdl/.
The following example demonstrates a typical use of the Operation class. The example takes a ServiceDescription that does not have a PortType that supports the HTTP POST protocol. It adds a PortType instance that supports POST, and writes out a new WSDL contract.
#using <System.Xml.dll> #using <System.Web.Services.dll> #using <System.dll> using namespace System; using namespace System::Web::Services::Description; using namespace System::Collections; using namespace System::Xml; Operation^ CreateOperation( String^ myOperationName, String^ myInputMesg, String^ myOutputMesg ) { // Create an Operation. Operation^ myOperation = gcnew Operation; myOperation->Name = myOperationName; OperationMessage^ myInput = dynamic_cast<OperationMessage^>(gcnew OperationInput); myInput->Message = gcnew XmlQualifiedName( myInputMesg ); OperationMessage^ myOutput = dynamic_cast<OperationMessage^>(gcnew OperationOutput); myOutput->Message = gcnew XmlQualifiedName( myOutputMesg ); // Add messages to the OperationMessageCollection. myOperation->Messages->Add( myInput ); myOperation->Messages->Add( myOutput ); Console::WriteLine( "Operation name is: {0}", myOperation->Name ); return myOperation; } int main() { ServiceDescription^ myDescription = ServiceDescription::Read( "Operation_5_Input_CS.wsdl" ); // Create a 'PortType' object. PortType^ myPortType = gcnew 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: {0}", 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" ); }
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
.jpeg?cs-save-lang=1&cs-lang=cpp)
.jpeg?cs-save-lang=1&cs-lang=cpp)