Redigera

Dela via


Operation.ParameterOrderString Property

Definition

Gets or sets an optional Remote Procedure Call (RPC) signature that orders specification for request-response or solicit-response operations.

public:
 property System::String ^ ParameterOrderString { System::String ^ get(); void set(System::String ^ value); };
public string ParameterOrderString { get; set; }
member this.ParameterOrderString : string with get, set
Public Property ParameterOrderString As String

Property Value

A list of names of the MessagePart instances separated by a single space.

Examples

String^ myString = nullptr;
Operation^ myOperation = gcnew Operation;
myDescription = ServiceDescription::Read( "Operation_2_Input_CS.wsdl" );
array<Message^>^myMessage = gcnew array<Message^>(myDescription->Messages->Count);

// Copy the messages from the service description.
myDescription->Messages->CopyTo( myMessage, 0 );
for ( int i = 0; i < myDescription->Messages->Count; i++ )
{
   array<MessagePart^>^myMessagePart = gcnew array<MessagePart^>(myMessage[ i ]->Parts->Count);

   // Copy the message parts into a MessagePart.
   myMessage[ i ]->Parts->CopyTo( myMessagePart, 0 );
   for ( int j = 0; j < myMessage[ i ]->Parts->Count; j++ )
   {
      myString = String::Concat( myString, myMessagePart[ j ]->Name, " " );
   }
}

// message part names.
myOperation->ParameterOrderString = myString;
array<String^>^myString1 = myOperation->ParameterOrder;
int k = 0;
Console::WriteLine( "The list of message part names is as follows:" );
while ( k < 5 )
{
   Console::WriteLine( myString1[ k ] );
   k++;
}
string myString = null ;
Operation myOperation = new Operation();
myDescription = ServiceDescription.Read("Operation_2_Input_CS.wsdl");
Message[] myMessage = new Message[ myDescription.Messages.Count ] ;

// Copy the messages from the service description.
myDescription.Messages.CopyTo( myMessage, 0 );
for( int i = 0 ; i < myDescription.Messages.Count; i++ )
{
   MessagePart[] myMessagePart =
      new MessagePart[ myMessage[i].Parts.Count ];

   // Copy the message parts into a MessagePart.
   myMessage[i].Parts.CopyTo( myMessagePart, 0 );
   for( int j = 0 ; j < myMessage[i].Parts.Count; j++ )
   {
      myString += myMessagePart[j].Name;
      myString += " " ;
   }
}
// Set the ParameterOrderString equal to the list of
// message part names.
myOperation.ParameterOrderString = myString;
string[] myString1 = myOperation.ParameterOrder;
int k = 0 ;
Console.WriteLine("The list of message part names is as follows:");
while( k<5 )
{
   Console.WriteLine( myString1[k] );
   k++;
}
Dim myString As String = Nothing
Dim myOperation As New Operation()
myDescription = ServiceDescription.Read("Operation_2_Input_VB.wsdl")
Dim myMessage(myDescription.Messages.Count) As Message

' Copy the messages from the service description.
myDescription.Messages.CopyTo(myMessage, 0)
Dim i As Integer
For i = 0 To myDescription.Messages.Count - 1
   Dim myMessagePart(myMessage(i).Parts.Count) As MessagePart

   ' Copy the message parts into a MessagePart.
   myMessage(i).Parts.CopyTo(myMessagePart, 0)
   Dim j As Integer
   For j = 0 To (myMessage(i).Parts.Count) - 1
      myString += myMessagePart(j).Name
      myString += " "
   Next j
Next i

' Set the ParameterOrderString equal to the list of 
' message part names.
myOperation.ParameterOrderString = myString
Dim myString1 As String() = myOperation.ParameterOrder
Dim k As Integer = 0
Console.WriteLine("The list of message part names is as follows:")
While k < 5
   Console.WriteLine(myString1(k))
   k += 1
End While

Remarks

The named MessagePart instances must adhere to the following rules:

  • The order of the named MessagePart instances reflects the order of the parameters in the RPC (remote procedure call) signature, which is the name of the operation, its input and output parameters, the results it returns and the exceptions it might be asked to handle.

  • The return value is not present in the list.

  • If the MessagePart name appears in both the input and output messages, it is an in/out parameter.

  • If the MessagePart name appears only in the input message, it is an in parameter.

  • If the MessagePart name appears only in the output message, it is an out parameter.

Note that this parameter list is not required, even if the Operation is to be used with an RPC-style Binding. Do not call ParameterOrderString directly. This method is only used internally for XML serialization. To return the parameter list use ParameterOrder.

Applies to