OperationCollection Class
.NET Framework 2.0
Represents a collection of instances of the Operation class. This class cannot be inherited.
Namespace: System.Web.Services.Description
Assembly: System.Web.Services (in system.web.services.dll)
Assembly: System.Web.Services (in system.web.services.dll)
The following example demonstrates the use of the properties and methods exposed by the OperationCollection class.
#using <System.dll> #using <System.Xml.dll> #using <System.Web.Services.dll> using namespace System; using namespace System::Web::Services; using namespace System::Xml; using namespace System::Web::Services::Description; int main() { try { // Read the 'MathService_Input_cs.wsdl' file. ServiceDescription^ myDescription = ServiceDescription::Read( "MathService_Input_cs.wsdl" ); PortTypeCollection^ myPortTypeCollection = myDescription->PortTypes; // Get the 'OperationCollection' for 'SOAP' protocol. OperationCollection^ myOperationCollection = myPortTypeCollection[ 0 ]->Operations; Operation^ myOperation = gcnew Operation; myOperation->Name = "Add"; OperationMessage^ myOperationMessageInput = (OperationMessage^)(gcnew OperationInput); myOperationMessageInput->Message = gcnew XmlQualifiedName( "AddSoapIn",myDescription->TargetNamespace ); OperationMessage^ myOperationMessageOutput = (OperationMessage^)(gcnew OperationOutput); myOperationMessageOutput->Message = gcnew XmlQualifiedName( "AddSoapOut",myDescription->TargetNamespace ); myOperation->Messages->Add( myOperationMessageInput ); myOperation->Messages->Add( myOperationMessageOutput ); myOperationCollection->Add( myOperation ); if ( myOperationCollection->Contains( myOperation ) == true ) { Console::WriteLine( "The index of the added 'myOperation' operation is : {0}", myOperationCollection->IndexOf( myOperation ) ); } myOperationCollection->Remove( myOperation ); // Insert the 'myOpearation' operation at the index '0'. myOperationCollection->Insert( 0, myOperation ); Console::WriteLine( "The operation at index '0' is : {0}", myOperationCollection[ 0 ]->Name ); array<Operation^>^myOperationArray = gcnew array<Operation^>(myOperationCollection->Count); myOperationCollection->CopyTo( myOperationArray, 0 ); Console::WriteLine( "The operation(s) in the collection are :" ); for ( int i = 0; i < myOperationCollection->Count; i++ ) { Console::WriteLine( " {0}", myOperationArray[ i ]->Name ); } myDescription->Write( "MathService_New_cs.wsdl" ); } catch ( Exception^ e ) { Console::WriteLine( "Exception caught!!!" ); Console::WriteLine( "Source : {0}", e->Source ); Console::WriteLine( "Message : {0}", e->Message ); } }
import System.*;
import System.Web.Services.*;
import System.Xml.*;
import System.Web.Services.Description.*;
class MyOperationCollectionSample
{
public static void main(String[] args)
{
try {
// Read the 'MathService_Input_jsl.wsdl' file.
ServiceDescription myDescription = ServiceDescription.
Read("MathService_Input_jsl.wsdl");
PortTypeCollection myPortTypeCollection = myDescription.
get_PortTypes();
// Get the 'OperationCollection' for 'SOAP' protocol.
OperationCollection myOperationCollection = myPortTypeCollection.
get_Item(0).get_Operations();
Operation myOperation = new Operation();
myOperation.set_Name("Add");
OperationMessage myOperationMessageInput = (OperationMessage)
new OperationInput();
myOperationMessageInput.set_Message(new XmlQualifiedName(
"AddSoapIn", myDescription.get_TargetNamespace()));
OperationMessage myOperationMessageOutput = (OperationMessage)
new OperationOutput();
myOperationMessageOutput.set_Message(new XmlQualifiedName(
"AddSoapOut", myDescription.get_TargetNamespace()));
myOperation.get_Messages().Add(myOperationMessageInput);
myOperation.get_Messages().Add(myOperationMessageOutput);
myOperationCollection.Add(myOperation);
if (myOperationCollection.Contains(myOperation) == true) {
Console.WriteLine("The index of the added 'myOperation' "
+ "operation is : "
+ myOperationCollection.IndexOf(myOperation));
}
myOperationCollection.Remove(myOperation);
// Insert the 'myOpearation' operation at the index '0'.
myOperationCollection.Insert(0, myOperation);
Console.WriteLine("The operation at index '0' is : "
+ myOperationCollection.get_Item(0).get_Name());
Operation myOperationArray[] = new Operation[myOperationCollection.
get_Count()];
myOperationCollection.CopyTo(myOperationArray, 0);
Console.WriteLine("The operation(s) in the collection are :");
for (int i = 0; i < myOperationCollection.get_Count(); i++) {
Console.WriteLine(" " + myOperationArray[i].get_Name());
}
myDescription.Write("MathService_New_jsl.wsdl");
}
catch (System.Exception e) {
Console.WriteLine("Exception caught!!!");
Console.WriteLine("Source : " + e.get_Source());
Console.WriteLine("Message : " + e.get_Message());
}
} //main
} //MyOperationCollectionSample
System.Object
System.Collections.CollectionBase
System.Web.Services.Description.ServiceDescriptionBaseCollection
System.Web.Services.Description.OperationCollection
System.Collections.CollectionBase
System.Web.Services.Description.ServiceDescriptionBaseCollection
System.Web.Services.Description.OperationCollection
Windows 98, Windows Server 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
The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.Community Additions
ADD
Show: