【问题标题】:How do you send an RichText Document as the body of an e-mail programatically using SmtpClient with .net如何使用带有 .net 的 SmtpClient 以编程方式将富文本文档作为电子邮件正文发送
【发布时间】:2014-10-03 07:10:31
【问题描述】:

我正在编写一个 WPF .net 应用程序来向几个人发送电子邮件。

我已经让程序正常运行,它可以使用以下代码发送纯文本电子邮件:

  private void OnSendEmails(object sender, RoutedEventArgs e)
  {
     using (SmtpClient smtpClient = new SmtpClient("<mySMTPserver>", <somePort>))
     {
        smtpClient.Timeout = 10000;
        smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
        smtpClient.UseDefaultCredentials = false;
        smtpClient.Credentials = new NetworkCredential("<myusername>", "<mypassword");

        foreach (string address in Addresses)
        {
           try
           {
              Console.Out.WriteLine("Sending e-mail to:  {0}", address);
              smtpClient.Send(Sender, address, Subject, Body);
              Console.Out.WriteLine("Sent e-mail to:  {0}", address);
           }
           catch (Exception ex)
           {
              Console.Out.WriteLine("Exception thrown while sending to :  {0}\r\n\r\n{1}", address, ex);
           }

           Console.Out.WriteLine("Sleeping");
           Thread.Sleep(Seconds * 1000);
           Console.Out.WriteLine("Done Sleeping");
        }
     }
  }

我想向选定的一组人发送几封电子邮件,以宣传我编写的应用程序。但是,我想向他们发送纯文本以外的内容。我可以用我希望发送的内容填充 RichTextBox,但是,我不知道如何发送它,因为 SmtpClient 只需要一个“字符串”来表示电子邮件的正文。

所以问题是,如何使用 .net 和 SmptClient 将 RichTextBox.Document 作为电子邮件正文发送?

文档本身将包含图像、文本和一些与图标相关联的链接。

【问题讨论】:

  • 现在想象一下在 iPad 或 Linux 机器上接收它。你会看到什么?
  • 几乎是一封标准的电子邮件,带有几个屏幕截图和几个指向 AppStore 的链接。也许使用链接的图标而不是实际的网址。

标签: c# .net wpf email smtpclient


【解决方案1】:

尝试创建MailMessage类型的对象:

var msg = new MailMessage(...);

那么你可以设置这个属性:

msg.IsBodyHtml = true;

并且消息正文将以 HTML 格式呈现。

我不完全确定 RichTextBox 是否会传递 HTML 或者可能是 RTF,这会略有不同,可能是您应该在将内容分配给 msg.Body 之前使用帮助方法将 RTF 转换为 HTML。

【讨论】:

    猜你喜欢
    • 2016-06-07
    • 1970-01-01
    • 2018-03-24
    • 1970-01-01
    • 2018-05-06
    • 1970-01-01
    • 2010-10-13
    • 2012-08-22
    • 1970-01-01
    相关资源
    最近更新 更多