【问题标题】:MailMessage setting the Senders NameMailMessage 设置发件人姓名
【发布时间】:2010-02-09 19:33:49
【问题描述】:

是否可以在MailMessage 对象上设置发件人姓名?我尝试从MailAddress 设置它,但DisplayName 属性似乎是只读的。

我尝试将“我的名字”作为发件人,但似乎也不起作用。

【问题讨论】:

    标签: c#


    【解决方案1】:
    MailMessage mail = new MailMessage();
    mail.From = new MailAddress("nerfDeathKnights@mycompany.com", "Bob Jones" );
    

    【讨论】:

    • +1 表示它需要一个可以同时设置两个属性的 MailAddress 对象。对于给出的其他示例,它假定字符串是电子邮件地址显示名称。
    • 我遇到了一个电子邮件地址编码问题,试试下面的代码。 MailAddress from = new MailAddress("jane@contoso.com", "Jane" + (char)0xD8+ "Clayton", System.Text.Encoding.UTF8);
    • 电子邮件地址加 1。负 1,因为它发生了。
    • 它不适用于 Outlook Office 365 电子邮件MailAddress mailFrom = new MailAddress("sender@xyz.com", "Sender Name"); 这会自动获取用户名
    • @KumarV,是否有可能以某种方式为 Outlook Office 365 设置它?
    【解决方案2】:

    您不需要使用 MailAddress 类。

    你可以让运行时解析你的字符串。

    var message = new MailMessage(
        "My Name my@name.com", 
        "Recipient One recipient@one.com,Recipient Two recipient@two.com",
        "Subject",
        "Body");
    

    【讨论】:

      【解决方案3】:

      来自 MSDN http://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.aspx

      MailMessage message = new MailMessage(
                 "jane@contoso.com",
                 "ben@contoso.com",
                 "Quarterly data report.",
                 "See the attached spreadsheet.");
      

      【讨论】:

      • 我不会投反对票,因为我不是刻薄的,但这并不能回答 OP 的问题......他想知道如何将 DisplayName 添加到 MailMessage,未设置发件人地址
      • 我会投反对票,因为它没有回答 OP 的问题。引文很好,但最好在答案出现时完成答案......嗯,你的答案。
      猜你喜欢
      • 1970-01-01
      • 2015-11-24
      • 1970-01-01
      • 2017-05-14
      • 2014-09-01
      • 2012-03-31
      • 2014-08-06
      • 2013-01-14
      • 1970-01-01
      相关资源
      最近更新 更多