1

こんにちは私は新しい要件があります。メールの本文にニュースレターを送信するにはどうすればよいですか。

ニュースレターは、MicrosoftPublisherアプリケーションから作成されています。

さらに情報が必要な場合はお知らせください。

ありがとう

4

2 に答える 2

4

LachlanRocheは優れた答えを持っています。ニュースレターをAdobeAcrobat、画像ファイル、またはhtmlに出力することを検討するかもしれないことを付け加えておきます。

ニュースレターの対象となるほとんどの人は、おそらくPublisherをインストールしていません。したがって、それらに.pubファイルを送信しても、望ましい効果が得られない可能性があります。

あなたのクライアントは、パブリッシャー内でマクロまたはオフィスアプリを呼び出して、作成したニュースレターを人々のリストに電子メールで送信できるようにしたいと考えていると思います。

Lachlansコードを使用すると、メールを送信できます。ニュースレターをより一般的な形式にエクスポートする手順を追加することをお勧めします。エクスポート用のコードからPublisherに組み込まれている関数を活用できると確信しています。

于 2010-02-26T04:34:51.797 に答える
1

.NETで電子メールを送信するには、SmtpClientクラスとMailMessageクラスおよびAttachmentクラスを使用します。

MailMessageクラスは、メールメッセージの内容を表します。SmtpClientクラスは、メール配信用に指定したSMTPホストに電子メールを送信します。Attachmentクラスを使用してメールの添付ファイルを作成できます。

別のスタイルシートと画像を含むHTMLニュースレターがあるとすると、HTML本文コンテンツを含むMailMessageを作成し、外部ファイルを添付ファイルとして追加する必要があります。ContentId各添付ファイルのプロパティを設定し、これを使用するためにHTMLの参照を更新する必要があります。

添付ファイルの本文HTMLのhrefは、cid:スキームを使用します。IDが「xyzzy」の添付ファイルの場合、hrefは「cid:xyzzy」です。

HTML本文を使用してMailMessageを作成するには:

        string content; // this should contain HTML

        // Create a message and set up the recipients.
        MailMessage message = new MailMessage(
           "from@example.com",
           "to@example.com");

        message.Subject = "The subject.";
        message.Body = content;
        message.IsBodyHtml = true;

添付ファイル付きのMailMessageを作成するには:

        string file = "data.xls";

        // Create a message and set up the recipients.
        MailMessage message = new MailMessage(
           "from@example.com",
           "to@example.com");

        message.Subject = "The subject.";
        message.Body = "See the attached file";

        // Create  the file attachment for this e-mail message.
        Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
        data.ContentId = Guid.NewGuid().ToString();
        // Add time stamp iformation for the file.
        ContentDisposition disposition = data.ContentDisposition;
        disposition.CreationDate = System.IO.File.GetCreationTime(file);
        disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
        disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
        // Add the file attachment to this e-mail message.
        message.Attachments.Add(data);

SmtpClientを使用してMailMessageを送信するには:

        //Send the message.
        SmtpClient client = new SmtpClient(server);
        // Add credentials if the SMTP server requires them.
        client.Credentials = CredentialCache.DefaultNetworkCredentials;
        client.Send(message);
于 2010-02-26T04:13:06.323 に答える