C#Webmail.Send方法如何更改人名

时间:2012-04-19 10:05:54

标签: c# .net email webmail

 WebMail.SmtpServer = SmtpServer;
                WebMail.UserName = SmtpUsername;
                WebMail.Password = SmtpPassword;
                WebMail.Send(
                        ReplayEmail,
                        subject,
                        body,
                        email
                    );

主题是例如“询问专家”

body是html body

电子邮件是例如“domain@domain.com”

电子邮件发送到例如“domain2@domain.com”

现在当我发送邮件时,我收到的邮件是可以的,但作为发送邮件的人,我看到“domain2@domain.com”。如何改变这个?

邮件现在看起来像

domain2@domain.com Ask specialist

我想要名字(例如Adoo)和像

这样的邮件

Adoo Ask specialist

5 个答案:

答案 0 :(得分:2)

我假设ReplayAddress是您在未显示的其他地方的代码中定义的System.Net.Mail.MailAddress。 MailAddress有一个构造函数,它带有一个字符串displayName,如果我理解正确的话,它应该按照你想要的那样做 - 文档就是here

答案 1 :(得分:2)

如果我理解正确,在设置邮件时你可以这样做:

mail.To = new MailAddress("domain2@domain.com", "Adoo");

或:

mail.To= @"\Adoo \ <domain2@domain.com>";  

答案 2 :(得分:1)

通常在SMTP中,您可以使用以下格式创建友好名称:

   WebMail.Send(
                    "\"Adoo\" <domain2@domain.com>",
                    subject,
                    body,
                    email
                );

答案 3 :(得分:1)

或者您可以使用

mail.To= @"&quot;Adoo&quot; &lt;domain2@domain.com&gt";

答案 4 :(得分:0)

您正在使用WebMail类,该类为类的.From属性提取字符串。我会使用MailAddress类并执行:

MailAddress from = new MailAddress("domain2@domain.com", "Adoo Ask specialist");