微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MailMessage.AlternateView.GetHtmlView() 返回 null

如何解决MailMessage.AlternateView.GetHtmlView() 返回 null

我正在使用 MailMessage 通过电子邮件导入我的一些实体,当我发送电子邮件和导入该电子邮件 ImapClient 连接时,它工作得很好。 但是当我转发一些电子邮件而不是发送时,情况相同,然后

m.AlternateViews.GetHtmlView()

获取此 null 并且无法获取我的应用程序的 Html 视图。

ImapClient ic = new ImapClient(ac.IMapServer,ac.IMapUserName,IMapPassword,port: ac.IMapPort > 0 ? ac.IMapPort : 000,secure: ac.IMapPort == 000 ? true : false);
int count = ic.GetMessageCount();
ic.SelectMailBox("INBox");
var mm = new List<MailMessage>();
for (int i = 0; i < count; i++)
{
    try
    {
        mm.Add(ic.GetMessage(i,false));
    }
    catch (Exception ex)
    {
        _logger.Error(string.Format("Error: {0}",ex.Message),ex);
    }
}
foreach (MailMessage m in mm)
{
    string pattern = @"<img\s(?=.*?\bcid:\b)[^>]*>";
    string replacement = "";
    Regex rgx = new Regex(pattern);
    string description = rgx.Replace(m.Body,replacement);
    var descriptionHtml = "";
    try
    {
        descriptionHtml = m.AlternateViews.GetHtmlView().Body;
    }
    catch (Exception exc)
    {
        _logger.Error(string.Format("Error {0}",exc.Message),exc);
    }
}

这是我正在使用的一些代码,但是为什么在转发时为什么不是在发送时为空。 任何帮助或建议将不胜感激。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。