目前我正在通过SPUtility.SendMail发送电子邮件。我想将图像嵌入到我的信息中,这样我就可以给它一点点风格(div背景,徽标图像等)。
这可能吗?
P.S。我无法为映像SRC提供直接URL地址,因为资源位于属于专用网络的站点中,该站点需要身份验证才能访问文件。
我在问这里之前做了一些研究,当然我遇到的第一件事是System.Net.Mail(你知道有一个专门讨论它的整个网站)。但是我客户公司的Sharepoint Deployment团队对自定义编码有一些严格的规定。他们有编码指南和一切。我正努力坚持使用SP SDK。
答案 0 :(得分:4)
对我而言最直接的方法是使用System.Net.Mail,因为您可以内联自己的内容。
以下是示例用法
using (MailMessage msg = new MailMessage("fromaddress", "toaddress"))
{
msg.Subject = "subject";
msg.Body = "content";
msg.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient("smtp server name");
smtp.Send(msg);
}
相同的概念适用于使用SPUtility.SendMail(除了您需要引用SPWeb之外的事实:
来自http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.utilities.sputility.sendemail.aspx
try
{
SPWeb thisWeb = SPControl.GetContextWeb(Context);
string toField = "someone@microsoft.com";
string subject = "Test Message";
string body = "Message sent from SharePoint";
bool success = SPUtility.SendEmail(thisWeb,true, false, toField, subject, body);
}
catch (Exception ex)
{
// handle exception
}
SendMail中的第二个布尔参数为false以禁用HTML编码,因此您可以使用< img>和< div>邮件正文中的标记。