MimePartCollection クラス

MimePart クラスのインスタンスのコレクションを表します。このクラスは継承できません。

この型のすべてのメンバの一覧については、MimePartCollection メンバ を参照してください。

System.Object
   System.Collections.CollectionBase
      System.Web.Services.Description.MimePartCollection

NotInheritable Public Class MimePartCollection
   Inherits CollectionBase
[C#]
public sealed class MimePartCollection : CollectionBase
[C++]
public __gc __sealed class MimePartCollection : public
   CollectionBase
[JScript]
public class MimePartCollection extends CollectionBase

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

コレクション内の各 MimePart は、 MimeMultipartRelatedBinding に追加された機能拡張要素を表し、対応する MessagePart の MIME タイプを指定します。

XML Web サービスのプロトコルの指定の詳細については、「 ASP.NET を使用した XML Web サービスの作成 」を参照してください。Web サービス記述言語 (WSDL: Web Services Description Language) の詳細については、http://www.w3.org/TR/wsdl/ の仕様を参照してください。

使用例

[Visual Basic, C#, C++] MimePartCollection クラスによって公開されるプロパティとメソッドを使用する例を次に示します。

 
Imports System
Imports System.Collections
Imports System.Xml
Imports System.Web.Services.Description

Public Class MyMimePartCollection
   
   Public Shared Sub Main()
      Dim myServiceDescription As ServiceDescription = ServiceDescription.Read _
                                             ("MimePartCollection_1_Input_vb.wsdl")
      Dim myServiceDescriptionCol As New ServiceDescriptionCollection()
      myServiceDescriptionCol.Add(myServiceDescription)
      Dim myXmlQualifiedName As New XmlQualifiedName("MimeServiceHttpPost", "http://tempuri.org/")
      ' Create a 'Binding' object.
      Dim myBinding As Binding = myServiceDescriptionCol.GetBinding(myXmlQualifiedName)
      Dim myOperationBinding As OperationBinding = Nothing
      Dim i As Integer
      For i = 0 To myBinding.Operations.Count - 1
         If myBinding.Operations(i).Name.Equals("AddNumbers") Then
            myOperationBinding = myBinding.Operations(i)
         End If
      Next i
      Dim myOutputBinding As OutputBinding = myOperationBinding.Output
      Dim myMimeMultipartRelatedBinding As MimeMultipartRelatedBinding = Nothing
      Dim myIEnumerator As IEnumerator = myOutputBinding.Extensions.GetEnumerator()
      While myIEnumerator.MoveNext()
         myMimeMultipartRelatedBinding = CType(myIEnumerator.Current, MimeMultipartRelatedBinding)
      End While
      ' Create an instances of 'MimePartCollection'.
      Dim myMimePartCollection As New MimePartCollection()
      myMimePartCollection = myMimeMultipartRelatedBinding.Parts
      
      Console.WriteLine("Total number of mimepart elements initially is: " + _
                                          myMimePartCollection.Count.ToString())
      ' Create an instance of 'MimePart'.
      Dim myMimePart As New MimePart()
      ' Create an instance of 'MimeXmlBinding'.
      Dim myMimeXmlBinding As New MimeXmlBinding()
      myMimeXmlBinding.Part = "body"
      myMimePart.Extensions.Add(myMimeXmlBinding)
      ' Insert a mimepart at first position.
      myMimePartCollection.Insert(0, myMimePart)
      Console.WriteLine("Inserting a mimepart object...")
      If myMimePartCollection.Contains(myMimePart) Then
         Console.WriteLine("'MimePart' is succesffully added at position: " + _
                                             myMimePartCollection.IndexOf(myMimePart).ToString())
         Console.WriteLine("Total number of mimepart elements after inserting is: " + _
                                                myMimePartCollection.Count.ToString())
      End If
      myServiceDescription.Write("MimePartCollection_1_Output_VB.wsdl")
      Console.WriteLine("MimePartCollection_1_Output_VB.wsdl has been generated successfully.")
   End Sub 'Main
End Class 'MyMimePartCollection

[C#] 
using System;
using System.Collections;
using System.Xml; 
using System.Web.Services.Description;  

public class MyMimePartCollection
{
   public static void Main()
   {
      ServiceDescription myServiceDescription = 
         ServiceDescription.Read("MimePartCollection_1_Input_cs.wsdl");
      ServiceDescriptionCollection myServiceDescriptionCol = 
         new ServiceDescriptionCollection();
      myServiceDescriptionCol.Add(myServiceDescription);
      XmlQualifiedName  myXmlQualifiedName = 
         new  XmlQualifiedName("MimeServiceHttpPost","http://tempuri.org/");
      // Create a 'Binding' object.
      Binding myBinding = myServiceDescriptionCol.GetBinding(myXmlQualifiedName);
      OperationBinding myOperationBinding= null;
      for(int i=0; i<myBinding.Operations.Count; i++) 
      {
         if(myBinding.Operations[i].Name.Equals("AddNumbers"))
         {
            myOperationBinding =myBinding.Operations[i];
         }
      }
      OutputBinding myOutputBinding = myOperationBinding.Output;
      MimeMultipartRelatedBinding myMimeMultipartRelatedBinding = null;
      IEnumerator myIEnumerator = myOutputBinding.Extensions.GetEnumerator();
      while(myIEnumerator.MoveNext())
      { 
         myMimeMultipartRelatedBinding=(MimeMultipartRelatedBinding)myIEnumerator.Current;
      }
      // Create an instances of 'MimePartCollection'.
      MimePartCollection myMimePartCollection = new MimePartCollection();
      myMimePartCollection= myMimeMultipartRelatedBinding.Parts;
      
      Console.WriteLine("Total number of mimepart elements initially is: "
                                       +myMimePartCollection.Count);
      // Create an instance of 'MimePart'.
      MimePart myMimePart=new MimePart();
      // Create an instance of 'MimeXmlBinding'.
      MimeXmlBinding myMimeXmlBinding = new MimeXmlBinding();
      myMimeXmlBinding.Part = "body";
      myMimePart.Extensions.Add(myMimeXmlBinding);
      // Insert a mimepart at first position.
      myMimePartCollection.Insert(0,myMimePart);
      Console.WriteLine("Inserting a mimepart object...");
      if(myMimePartCollection.Contains(myMimePart))
      {
         Console.WriteLine("'MimePart' is succesffully added at position: "
                              +myMimePartCollection.IndexOf(myMimePart));
         Console.WriteLine("Total number of mimepart elements after inserting is: "
                              + myMimePartCollection.Count);
      }
       myServiceDescription.Write("MimePartCollection_1_Output_CS.wsdl");
       Console.WriteLine("MimePartCollection_1_Output_CS.wsdl has been generated successfully.");
   }
}

[C++] 
#using <mscorlib.dll>
#using <System.dll>
#using <System.Xml.dll>
#using <System.Web.Services.dll>
using namespace System;
using namespace System::Collections;
using namespace System::Xml;
using namespace System::Web::Services::Description;

int main()
{
   ServiceDescription * myServiceDescription =
      ServiceDescription::Read(S"MimePartCollection_1_Input_cs.wsdl");
   ServiceDescriptionCollection* myServiceDescriptionCol = new ServiceDescriptionCollection();
   myServiceDescriptionCol->Add(myServiceDescription);
   XmlQualifiedName* myXmlQualifiedName = 
      new XmlQualifiedName(S"MimeServiceHttpPost", S"http://tempuri.org/");
   // Create a 'Binding' object.
   Binding * myBinding = myServiceDescriptionCol->GetBinding(myXmlQualifiedName);
   OperationBinding* myOperationBinding = 0;
   for (int i=0; i<myBinding->Operations->Count; i++)
      if (myBinding->Operations->Item[i]->Name->Equals(S"AddNumbers"))
         myOperationBinding =myBinding->Operations->Item[i];
   OutputBinding * myOutputBinding = myOperationBinding->Output;
   MimeMultipartRelatedBinding* myMimeMultipartRelatedBinding = 0;
   IEnumerator* myIEnumerator = myOutputBinding->Extensions->GetEnumerator();
   while(myIEnumerator->MoveNext())
      myMimeMultipartRelatedBinding = dynamic_cast<MimeMultipartRelatedBinding*>(myIEnumerator->Current);

   // Create an instances of 'MimePartCollection'.
   MimePartCollection* myMimePartCollection = new MimePartCollection();
   myMimePartCollection= myMimeMultipartRelatedBinding->Parts;

   Console::WriteLine(S"Total number of mimepart elements initially is: {0}", 
      __box(myMimePartCollection->Count));
   // Create an instance of 'MimePart'.
   MimePart* myMimePart = new MimePart();
   // Create an instance of 'MimeXmlBinding'.
   MimeXmlBinding* myMimeXmlBinding = new MimeXmlBinding();
   myMimeXmlBinding->Part = S"body";
   myMimePart->Extensions->Add(myMimeXmlBinding);
   // Insert a mimepart at first position.
   myMimePartCollection->Insert(0, myMimePart);
   Console::WriteLine(S"Inserting a mimepart object...");
   if (myMimePartCollection->Contains(myMimePart))
   {
      Console::WriteLine(S"'MimePart' is succesffully added at position: {0}", 
         __box(myMimePartCollection->IndexOf(myMimePart)));
      Console::WriteLine(S"Total number of mimepart elements after inserting is: {0}", __box(myMimePartCollection->Count));
   }
   myServiceDescription->Write(S"MimePartCollection_1_Output_cs.wsdl");
   Console::WriteLine(S"MimePartCollection_1_Output_cs.wsdl has been generated successfully.");
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Web.Services.Description

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

アセンブリ: System.Web.Services (System.Web.Services.dll 内)

参照

MimePartCollection メンバ | System.Web.Services.Description 名前空間