MessagePartCollection Class

 

Represents a collection of instances of the MessagePart class. This class cannot be inherited.

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

System::Object
  System.Collections::CollectionBase
    System.Web.Services.Description::ServiceDescriptionBaseCollection
      System.Web.Services.Description::MessagePartCollection

public ref class MessagePartCollection sealed : ServiceDescriptionBaseCollection

NameDescription
System_CAPS_pubpropertyCapacity

Gets or sets the number of elements that the CollectionBase can contain.(Inherited from CollectionBase.)

System_CAPS_pubpropertyCount

Gets the number of elements contained in the CollectionBase instance. This property cannot be overridden.(Inherited from CollectionBase.)

System_CAPS_pubpropertyItem[Int32]

Gets or sets the value of a MessagePart at the specified zero-based index.

System_CAPS_pubpropertyItem[String^]

Gets a MessagePart specified by its name.

NameDescription
System_CAPS_pubmethodAdd(MessagePart^)

Adds the specified MessagePart to the end of the MessagePartCollection.

System_CAPS_pubmethodClear()

Removes all objects from the CollectionBase instance. This method cannot be overridden.(Inherited from CollectionBase.)

System_CAPS_pubmethodContains(MessagePart^)

Returns a value indicating whether the specified MessagePart is a member of the MessagePartCollection.

System_CAPS_pubmethodCopyTo(array<MessagePart^>^, Int32)

Copies the entire MessagePartCollection to a compatible one-dimensional array of type MessagePart, starting at the specified zero-based index of the target array.

System_CAPS_pubmethodEquals(Object^)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_pubmethodGetEnumerator()

Returns an enumerator that iterates through the CollectionBase instance.(Inherited from CollectionBase.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodIndexOf(MessagePart^)

Searches for the specified MessagePart and returns the zero-based index of the first occurrence within the collection.

System_CAPS_pubmethodInsert(Int32, MessagePart^)

Adds the specified MessagePart to the MessagePartCollection at the specified zero-based index.

System_CAPS_pubmethodRemove(MessagePart^)

Removes the first occurrence of the specified MessagePart from the MessagePartCollection.

System_CAPS_pubmethodRemoveAt(Int32)

Removes the element at the specified index of the CollectionBase instance. This method is not overridable.(Inherited from CollectionBase.)

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

NameDescription
System_CAPS_pubinterfaceSystem_CAPS_privmethodICollection::CopyTo(Array^, Int32)

Copies the entire CollectionBase to a compatible one-dimensional Array, starting at the specified index of the target array.(Inherited from CollectionBase.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList::Add(Object^)

Adds an object to the end of the CollectionBase.(Inherited from CollectionBase.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList::Contains(Object^)

Determines whether the CollectionBase contains a specific element.(Inherited from CollectionBase.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList::IndexOf(Object^)

Searches for the specified Object and returns the zero-based index of the first occurrence within the entire CollectionBase.(Inherited from CollectionBase.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList::Insert(Int32, Object^)

Inserts an element into the CollectionBase at the specified index.(Inherited from CollectionBase.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList::Remove(Object^)

Removes the first occurrence of a specific object from the CollectionBase.(Inherited from CollectionBase.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyICollection::IsSynchronized

Gets a value indicating whether access to the CollectionBase is synchronized (thread safe).(Inherited from CollectionBase.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyICollection::SyncRoot

Gets an object that can be used to synchronize access to the CollectionBase.(Inherited from CollectionBase.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList::IsFixedSize

Gets a value indicating whether the CollectionBase has a fixed size.(Inherited from CollectionBase.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList::IsReadOnly

Gets a value indicating whether the CollectionBase is read-only.(Inherited from CollectionBase.)

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList::Item[Int32]

Gets or sets the element at the specified index.(Inherited from CollectionBase.)

NameDescription
System_CAPS_pubmethodAsParallel()

Overloaded. Enables parallelization of a query.(Defined by ParallelEnumerable.)

System_CAPS_pubmethodAsQueryable()

Overloaded. Converts an IEnumerable to an IQueryable.(Defined by Queryable.)

System_CAPS_pubmethodCast<TResult>()

Casts the elements of an IEnumerable to the specified type.(Defined by Enumerable.)

System_CAPS_pubmethodOfType<TResult>()

Filters the elements of an IEnumerable based on a specified type.(Defined by Enumerable.)

The MessagePart class corresponds to a Web Services Description Language (WSDL) <part> element enclosed by the <message> element, which is in turn enclosed by the <definitions> root element. For more information about WSDL, see the specification at http://www.w3.org/TR/wsdl/.

The following example demonstrates the use of the methods and properties exposed by the MessagePartCollection class.

#using <System.dll>
#using <System.Xml.dll>
#using <System.Web.Services.dll>

using namespace System;
using namespace System::Web::Services::Description;
using namespace System::Collections;
using namespace System::Xml;
int main()
{
   Console::WriteLine( "" );
   Console::WriteLine( "MessagePartCollection Sample" );
   Console::WriteLine( "============================" );
   Console::WriteLine( "" );
   ServiceDescription^ myServiceDescription = ServiceDescription::Read( "MathService.wsdl" );

   // Get the message collection.
   MessageCollection^ myMessageCollection = myServiceDescription->Messages;
   Console::WriteLine( "Total Messages in the document = {0}", myServiceDescription->Messages->Count );
   Console::WriteLine( "" );
   Console::WriteLine( "Enumerating PartCollection for each message..." );
   Console::WriteLine( "" );

   // Get the message part collection for each message.
   for ( int i = 0; i < myMessageCollection->Count; ++i )
   {
      Console::WriteLine( "Message      : {0}", myMessageCollection[ i ]->Name );

      // Get the message part collection.
      MessagePartCollection^ myMessagePartCollection = myMessageCollection[ i ]->Parts;

      // Display the part collection.
      for ( int k = 0; k < myMessagePartCollection->Count; k++ )
      {
         Console::WriteLine( "\t       Part Name     : {0}", myMessagePartCollection[ k ]->Name );
         Console::WriteLine( "\t       Message Name  : {0}", myMessagePartCollection[ k ]->Message->Name );
      }
      Console::WriteLine( "" );
   }

   Console::WriteLine( "MessagePartCollection for the message AddHttpGetIn." );
   Message^ myLocalMessage = myServiceDescription->Messages[ "AddHttpPostOut" ];
   if ( myMessageCollection->Contains( myLocalMessage ) )
   {
      Console::WriteLine( "Message      : {0}", myLocalMessage->Name );

      // Get the message part collection.
      MessagePartCollection^ myMessagePartCollection = myLocalMessage->Parts;
      array<MessagePart^>^myMessagePart = gcnew array<MessagePart^>(myMessagePartCollection->Count);

      // Copy the MessagePartCollection to an array.
      myMessagePartCollection->CopyTo( myMessagePart, 0 );
      for ( int k = 0; k < myMessagePart->Length; k++ )
         Console::WriteLine( "\t       Part Name : {0}", myMessagePartCollection[ k ]->Name );
      Console::WriteLine( "" );
   }

   Console::WriteLine( "Checking if message is AddHttpPostOut..." );
   Message^ myMessage = myServiceDescription->Messages[ "AddHttpPostOut" ];
   if ( myMessageCollection->Contains( myMessage ) )
   {
      // Get the mssage part collection.
      MessagePartCollection^ myMessagePartCollection = myMessage->Parts;

      // Get the part named Body.
      MessagePart^ myMessagePart = myMessage->Parts[ "Body" ];
      if ( myMessagePartCollection->Contains( myMessagePart ) )
      {
         // Get the part named Body.
         Console::WriteLine( "Index of Body in MessagePart collection = {0}", myMessagePartCollection->IndexOf( myMessagePart ) );
         Console::WriteLine( "Deleting Body from MessagePart collection..." );
         myMessagePartCollection->Remove( myMessagePart );
         if ( myMessagePartCollection->IndexOf( myMessagePart ) == -1 )
                  Console::WriteLine( "from the message AddHttpPostOut." );
      }
   }
}

.NET Framework
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.

Return to top
Show: