我以前在ASP Classic中使用CDO.Message
和CDO.Configuration
来创建HTML电子邮件,这非常简单。在.NET中,您似乎必须为System.Net.Mail.Message
对象提供内容的HTML字符串,然后以某种方式嵌入所需的图像。在.NET中有一种简单的方法吗?我是.NET MVC的新手,非常感谢任何帮助。
这就是它在ASP Classic中的表现:
Set objCDO = Server.CreateObject("CDO.Message")
objCDO.To = someone@somthing.com
objCDO.From = me@myaddress.com
objCDO.CreateMHTMLBody "http://www.example.com/somepage.html"
objCDO.Subject = sSubject
'the following are for advanced CDO schematics
'for authentication and external SMTP
Set cdoConfig = CreateObject("CDO.Configuration")
With cdoConfig.Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort '2 - send using port
.Item(cdoSMTPServer) = mail.myaddress.com
.Item(cdoSMTPServerPort) = 25
.Item(cdoSMTPConnectionTimeout) = 10
.Item(cdoSMTPAuthenticate) = cdoBasic
.Item(cdoSendUsername) = "myusername"
.Item(cdoSendPassword) = "mypassword"
.Update
End With
Set objCDO.Configuration = cdoConfig
objCDO.Send
基本上我想发送一个我的观点(减去site.master)作为电子邮件,嵌入图像。
答案 0 :(得分:0)
我不知道一个简单的方法,但您可以使用WebClient获取您的页面,然后将响应作为正文传递。
示例:
var webClient = new WebClient();
byte[] returnFromPost = webClient.UploadValues(Url, Inputs);
var utf = new UTF8Encoding();
string returnValue = utf.GetString(returnFromPost);
return returnValue;
注意:输入只是一个后置变量的字典。
我认为你会遇到的一个问题是我不认为你会得到这些照片。您可以解析所获得的HTML,然后将图像绝对地返回到您的服务器。
答案 1 :(得分:0)
感谢您的帮助 - 这是一个由.NET MVP发布的非常简洁和全面的教程 http://msdn.microsoft.com/en-us/vbasic/bb630227.aspx