ASP.Net应用程序之外的MailDefinition

zac*_*ryc 7 c#

我正在寻找一个C#控制台应用程序,它将在运行发送电子邮件的过程中.我只是通过做类似的事情来发送电子邮件:

     MailMessage message = new MailMessage("foo@foo.com", "bar@bar.com", "Test message", "Test message content");
     message.IsBodyHtml = true;
     message.Body = "<a href=\"http://www.daringfireball.net\">DaringFireball.net</a>";
     SmtpClient client = new SmtpClient("localhost"); // Your host here

     try
     {
        client.Send(message);
     }
     catch (Exception e)
     {
        Console.WriteLine("There was an error trying to send the message: " + e.ToString());
     }
Run Code Online (Sandbox Code Playgroud)

我试图用MailDefinition找到一种方法,因为这些电子邮件可能会更长,但在这样做的过程中我遇到了一个小问题.CreateMailMessage方法需要一个我没有的System.Web.UI.Control,因为我不是ASP.Net应用程序.

有没有人遇到这个问题?或者找到了更好的方法吗?

谢谢

Imr*_*vel 0

我不习惯MailDefinition以任何方式表现优越。来自 MSDN:

“使用 MailDefinition 类可以简化创建要由控件发送的预定义电子邮件消息的过程。如果要不使用控件发送电子邮件,请参阅 System.Net.Mail 。” (来源在这里

但是假设您有充分的理由选择MailDefinition常规MailMessage ,然后将 System.Web.dll 的引用添加到您的项目中。您不必在 IIS 中运行即可使用该程序集中的类。