繁体   English   中英

.NET中的CDOSYS AutoGenerateTextBody是否等效

[英]Is there an equivalence to CDOSYS AutoGenerateTextBody in .NET

我正在移植一些VBScript代码,该代码使用标准CDOSYS Message对象生成电子邮件。 消息对象具有属性AutoGenerateTextBody ,当将其分配为HTMLBody属性时,该属性为true时将导致它自动创建TextBody属性值。 因此,在邮件正文中创建了典型的text / plain和text / html替代方案。

但是,.NET似乎缺少此功能。 MailMessage对象确实具有创建替代视图的能力,但是似乎没有一种方法可以轻松地从HTML内容创建文本正文内容。

我不一定要寻找自动魔术选项,但我确实需要一种解决方案,以获取HTML字符串并将其转换为合理的纯文本表示形式。 仅删除所有HTML标记并不会减少它。

现有.NET框架中是否存在可以实现此目的的工具?

我不知道.NET框架本身的任何内容,但是您可以使用CDO为您完成转换。 诚然,这感觉有点脏,但是可以完成工作!

添加对“ Microsoft CDO for Windows 2000 Library”的引用(在“ Add Reference”对话框的“ COM”选项卡中),然后离开:

public string GetTextBody(string htmlBody)
{
    CDO.Message msg = new CDO.Message();
    msg.AutoGenerateTextBody = true;
    msg.HTMLBody = htmlBody;

    return msg.TextBody;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM