是否可以在Sharepoint中的电子邮件中嵌入图像?

时间:2010-02-17 22:54:11

标签: html sharepoint email sharepoint-2007

目前我正在通过SPUtility.SendMail发送电子邮件。我想将图像嵌入到我的信息中,这样我就可以给它一点点风格(div背景,徽标图像等)。

这可能吗?

P.S。我无法为映像SRC提供直接URL地址,因为资源位于属于专用网络的站点中,该站点需要身份验证才能访问文件。

编辑:

我在问这里之前做了一些研究,当然我遇到的第一件事是System.Net.Mail(你知道有一个专门讨论它的整个网站)。但是我客户公司的Sharepoint Deployment团队对自定义编码有一些严格的规定。他们有编码指南和一切。我正努力坚持使用SP SDK。

1 个答案:

答案 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>邮件正文中的标记。