I'm looking to write a C# console app that will, in the process of running send out emails. I have the emails going out simply by doing something like:
MailMessage message = new MailMessage("[email protected]", "[email protected]", "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());
}
I was trying to find a way to do this with MailDefinition because these emails might be longer, but in the process of doing that I ran into a little problem. The CreateMailMessage method requires a System.Web.UI.Control which I don't have because I'm not an ASP.Net Application.
Has anyone run into this problem? Or found a better way of doing this?
Thanks
Ensure you've used correct .Net Framework 4 and not .Net Framework 4 client as the target framework. Add System.Web to the references of your project.
Then create the Mailmessage as: MailMessage msgHtml = message.CreateMailMessage(recipients, replacements, new System.Web.UI.Control());
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With