次の方法で共有


WindowsMobileMailTransportBindingElement クラス

[このドキュメントはプレビュー版であり、後のリリースで変更されることがあります。 空白のトピックは、プレースホルダーとして挿入されています。]

Windows Mobile を搭載したデバイスのメール トランスポート バインディング要素を表します。

名前空間:  Microsoft.ServiceModel.Channels.Mail.WindowsMobile
アセンブリ:  Microsoft.ServiceModel.Channels.Mail.WindowsMobile (Microsoft.ServiceModel.Channels.Mail.WindowsMobile.dll 内)

構文

'宣言
Public NotInheritable Class WindowsMobileMailTransportBindingElement _
    Inherits MailTransportBindingElementBase
'使用
Dim instance As WindowsMobileMailTransportBindingElement
public sealed class WindowsMobileMailTransportBindingElement : MailTransportBindingElementBase
public ref class WindowsMobileMailTransportBindingElement sealed : public MailTransportBindingElementBase
[<SealedAttribute>]
type WindowsMobileMailTransportBindingElement =  
    class
        inherit MailTransportBindingElementBase
    end

解説

WindowsMobileMailTransportBindingElement は、Windows Mobile を搭載したデバイスのメール トランスポートを構築するために使用されるメール トランスポート バインディング要素を表すシール クラスです。メール トランスポートを使用すると、Exchange サーバー (つまり、Microsoft Exchange Server を実行しているサーバー) との間でメッセージを同期させることができます。

MailTransportBindingElementBase 基本クラスには、このクラスで使用されるほとんどの機能が含まれます。

このクラスの新しいインスタンスを初期化した後に、そのオブジェクトを引数として新しい CustomBinding オブジェクトのコンストラクターに渡します。

WindowsMobileMailTransportBindingElement クラスを使用する方法の例を次に示します。ここでは、カスタムのエンコーディング要素を使用して、CustomBinding オブジェクトを作成します。

Class Program
    PrivateShared ChannelName AsString = "Channel1"PrivateShared DestinationEmailAddress AsString = "someone@example.com"PrivateShared serializer AsNew CFMessagingSerializer(GetType(String))


    SharedSub Main(ByVal args() AsString) 
        Dim factory As IChannelFactory(Of IOutputChannel)
        Dim listener As IChannelListener(Of IInputChannel)
        Dim output As IOutputChannel
        Dim input As IInputChannel
        Dim bpc As BindingParameterCollection
        Dim mailTransportBindingElement As MailTransportBindingElementBase
        Dim msgEncodingBindingElement As MessageEncodingBindingElement
        Dim message As Message
        Dim str AsStringDim binding As System.ServiceModel.Channels.Binding

        ' Instantiate a TextMessageEncodingBindingElement or        ' a custom encoding binding element. If you use a custom encoding        ' binding element, messages must be sent as attachments.
        msgEncodingBindingElement = New CustomMessageEncodingBindingElement()
        mailTransportBindingElement = New WindowsMobileMailTransportBindingElement()

        mailTransportBindingElement.MessageContainerType = MessageContainerType.Attachment
        ' In this example, set lifetime to 1 day, 10 hours,        ' 20 minutes, and 30 seconds.
        mailTransportBindingElement.TimeToLive = New TimeSpan(1, 10, 20, 30)
        mailTransportBindingElement.Transport.MaxTotalMessageCacheSize = 1000
        binding = New CustomBinding(msgEncodingBindingElement, mailTransportBindingElement)
        bpc = New BindingParameterCollection()

        factory = binding.BuildChannelFactory(Of IOutputChannel)(bpc)
        listener = binding.BuildChannelListener(Of IInputChannel)(MailUriHelper.CreateUri(ChannelName, ""))

        factory.Open()
        output = factory.CreateChannel(New EndpointAddress(MailUriHelper.Create(ChannelName, DestinationEmailAddress)))
        output.Open()

        message = System.ServiceModel.Channels.Message.CreateMessage(MessageVersion.Default, "urn:Test", "Hello, World!", serializer)
        output.Send(message)

        output.Close()
        factory.Close()

        listener.Open()
        input = listener.AcceptChannel()
        input.Open()

        message = input.Receive()
        str = message.GetBody(OfString)(serializer)

        MessageBox.Show(str, "Received message")

        input.Close()
        listener.Close()

        mailTransportBindingElement.Close()

    EndSubEndClass
class Program
{
    privatestaticstring ChannelName = "Channel1";
    privatestaticstring DestinationEmailAddress = "someone@example.com";

    privatestatic CFMessagingSerializer serializer = new CFMessagingSerializer(typeof(string));

    staticvoid Main(string[] args)
    {
        IChannelFactory<IOutputChannel> factory;
        IChannelListener<IInputChannel> listener;
        IOutputChannel output;
        IInputChannel input;
        BindingParameterCollection bpc;
        MailTransportBindingElementBase mailTransportBindingElement;
        MessageEncodingBindingElement msgEncodingBindingElement;
        Message message;
        string str;
        System.ServiceModel.Channels.Binding binding;

        // Instantiate a TextMessageEncodingBindingElement or// a custom encoding binding element. If you use a custom encoding// binding element, messages must be sent as attachments.
        msgEncodingBindingElement = new CustomMessageEncodingBindingElement();
        mailTransportBindingElement = new WindowsMobileMailTransportBindingElement();

        mailTransportBindingElement.MessageContainerType = MessageContainerType.Attachment;
        // In this example, set lifetime to 1 day, 10 hours,// 20 minutes, and 30 seconds.
        mailTransportBindingElement.TimeToLive = new TimeSpan(1, 10, 20, 30);
        mailTransportBindingElement.Transport.MaxTotalMessageCacheSize = 1000;

        binding = new CustomBinding(msgEncodingBindingElement, mailTransportBindingElement);
        bpc = new BindingParameterCollection();

        factory = binding.BuildChannelFactory<IOutputChannel>(bpc);
        listener = binding.BuildChannelListener<IInputChannel>(MailUriHelper.CreateUri(ChannelName, ""), bpc);

        factory.Open();
        output = factory.CreateChannel(new EndpointAddress(MailUriHelper.Create(ChannelName, DestinationEmailAddress)));

        output.Open();

        message = Message.CreateMessage(MessageVersion.Default, "urn:Test", "Hello, World!", serializer);
        output.Send(message);

        output.Close();
        factory.Close();

        listener.Open();
        input = listener.AcceptChannel();
        input.Open();

        message = input.Receive();
        str = message.GetBody<string>(serializer);

        MessageBox.Show(str, "Received message");

        input.Close();
        listener.Close();

        mailTransportBindingElement.Close();
    }
}

継承階層

System.Object
  System.ServiceModel.Channels.BindingElement
    System.ServiceModel.Channels.TransportBindingElement
      Microsoft.ServiceModel.Channels.Mail.MailTransportBindingElementBase
        Microsoft.ServiceModel.Channels.Mail.WindowsMobile.WindowsMobileMailTransportBindingElement

スレッド セーフ

この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。 インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

プラットフォーム

Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。 サポートされているバージョンについては、「.NET フレームワークのシステム要件」を参照してください。

バージョン情報

.NET Compact Framework

サポート対象 : 3.5

参照

参照

WindowsMobileMailTransportBindingElement メンバー

Microsoft.ServiceModel.Channels.Mail.WindowsMobile 名前空間