This documentation is archived and is not being maintained.

MimeXmlBinding Class

Represents an extensibility element added to a MimePart, an InputBinding or an OutputBinding. It specifies the schema for XML messages that are not SOAP compliant. This class cannot be inherited.

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

[XmlFormatExtensionAttribute(L"mimeXml", L"http://schemas.xmlsoap.org/wsdl/mime/", 
	typeof(MimePart), typeof(InputBinding), typeof(OutputBinding))]
public ref class MimeXmlBinding sealed : public ServiceDescriptionFormatExtension

For more information about specifying protocols for XML Web services, see [<topic://cpconbuildingaspnetwebservices>]. For more information about Web Services Description Language (WSDL), see the specification at http://www.w3.org/TR/wsdl/.

The following example demonstrates a typical use of the MimeXmlBinding class.

#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;
int main()
{
   try
   {
      ServiceDescription^ myDescription = ServiceDescription::Read( "MimeXmlBinding_Part_3_Input_CPP.wsdl" );

      // Create the 'Binding' object.
      Binding^ myBinding = gcnew Binding;

      // Initialize 'Name' property of 'Binding' class.
      myBinding->Name = "MimeXmlBinding_Part_3_ServiceHttpPost";
      XmlQualifiedName^ myXmlQualifiedName = gcnew XmlQualifiedName( "s0:MimeXmlBinding_Part_3_ServiceHttpPost" );
      myBinding->Type = myXmlQualifiedName;

      // Create the 'HttpBinding' object.
      HttpBinding^ myHttpBinding = gcnew HttpBinding;
      myHttpBinding->Verb = "POST";

      // Add the 'HttpBinding' to the 'Binding'.
      myBinding->Extensions->Add( myHttpBinding );

      // Create the 'OperationBinding' object.
      OperationBinding^ myOperationBinding = gcnew OperationBinding;
      myOperationBinding->Name = "AddNumbers";
      HttpOperationBinding^ myHttpOperationBinding = gcnew HttpOperationBinding;
      myHttpOperationBinding->Location = "/AddNumbers";

      // Add the 'HttpOperationBinding' to 'OperationBinding'.
      myOperationBinding->Extensions->Add( myHttpOperationBinding );

      // Create the 'InputBinding' object.
      InputBinding^ myInputBinding = gcnew InputBinding;
      MimeContentBinding^ myMimeContentBinding = gcnew MimeContentBinding;
      myMimeContentBinding->Type = "application/x-www-form-urlencoded";
      myInputBinding->Extensions->Add( myMimeContentBinding );

      // Add the 'InputBinding' to 'OperationBinding'.
      myOperationBinding->Input = myInputBinding;

      // Create an OutputBinding.
      OutputBinding^ myOutputBinding = gcnew OutputBinding;
      MimeXmlBinding^ myMimeXmlBinding = gcnew MimeXmlBinding;

      // Initialize the Part property of the MimeXmlBinding.
      myMimeXmlBinding->Part = "Body";

      // Add the MimeXmlBinding to the OutputBinding.
      myOutputBinding->Extensions->Add( myMimeXmlBinding );

      // Add the 'OutPutBinding' to 'OperationBinding'.
      myOperationBinding->Output = myOutputBinding;

      // Add the 'OperationBinding' to 'Binding'.
      myBinding->Operations->Add( myOperationBinding );

      // Add the 'Binding' to 'BindingCollection' of 'ServiceDescription'.
      myDescription->Bindings->Add( myBinding );

      // Write the 'ServiceDescription' as a WSDL file.
      myDescription->Write( "MimeXmlBinding_Part_3_Output_CPP.wsdl" );
      Console::WriteLine( "WSDL file with name 'MimeXmlBinding_Part_3_Output_CPP.wsdl' is" 
      " created successfully." );
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "Exception: {0}", e->Message );
   }
}
#using <mscorlib.dll>
#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;

int main()
{
   try
   {
      ServiceDescription* myDescription =
         ServiceDescription::Read(S"MimeXmlBinding_Part_3_Input_CS.wsdl");
      // Create the 'Binding' object.
      Binding* myBinding = new Binding();
      // Initialize 'Name' property of 'Binding' class.
      myBinding->Name = S"MimeXmlBinding_Part_3_ServiceHttpPost";
      XmlQualifiedName*myXmlQualifiedName = 
         new XmlQualifiedName(S"s0:MimeXmlBinding_Part_3_ServiceHttpPost");
      myBinding->Type = myXmlQualifiedName;
      // Create the 'HttpBinding' object.
      HttpBinding* myHttpBinding = new HttpBinding();
      myHttpBinding->Verb=S"POST";
      // Add the 'HttpBinding' to the 'Binding'.
      myBinding->Extensions->Add(myHttpBinding);
      // Create the 'OperationBinding' object.
      OperationBinding* myOperationBinding = new OperationBinding();
      myOperationBinding->Name = S"AddNumbers";
      HttpOperationBinding* myHttpOperationBinding = new HttpOperationBinding();
      myHttpOperationBinding->Location=S"/AddNumbers";
      // Add the 'HttpOperationBinding' to 'OperationBinding'.
      myOperationBinding->Extensions->Add(myHttpOperationBinding);
      // Create the 'InputBinding' object.
      InputBinding* myInputBinding = new InputBinding();
      MimeContentBinding* myMimeContentBinding = new MimeContentBinding();
      myMimeContentBinding->Type=S"application/x-www-form-urlencoded";
      myInputBinding->Extensions->Add(myMimeContentBinding);
      // Add the 'InputBinding' to 'OperationBinding'.
      myOperationBinding->Input = myInputBinding;
      // Create an OutputBinding.
      OutputBinding* myOutputBinding = new OutputBinding();
      MimeXmlBinding* myMimeXmlBinding = new MimeXmlBinding();

      // Initialize the Part property of the MimeXmlBinding.
      myMimeXmlBinding->Part=S"Body";

      // Add the MimeXmlBinding to the OutputBinding.
      myOutputBinding->Extensions->Add(myMimeXmlBinding);
      // Add the 'OutPutBinding' to 'OperationBinding'.
      myOperationBinding->Output = myOutputBinding;
      // Add the 'OperationBinding' to 'Binding'.
      myBinding->Operations->Add(myOperationBinding);
      // Add the 'Binding' to 'BindingCollection' of 'ServiceDescription'.
      myDescription->Bindings->Add(myBinding);
      // Write the 'ServiceDescription' as a WSDL file.
      myDescription->Write(S"MimeXmlBinding_Part_3_Output_CS.wsdl");
      Console::WriteLine(S"WSDL file with name 'MimeXmlBinding_Part_3_Output_CS.wsdl' is"
         S" created successfully.");
   }
   catch(Exception* e)
   {
      Console::WriteLine( S"Exception: {0}", e->Message );
   }
}

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0
Show: