C# 在ASP.net网页上显示exchange邮件的最佳方式是什么?
我有一个在ASP.net网站上列出的项目上发生的操作列表。这些操作记录在链接到该项的简单sql表中。 i、 e: 为此,我必须查询支持邮箱中的新邮件消息。收到新邮件时,将创建“邮件已收到”操作。“mail Received”(已收到邮件)条目应可单击,以便支持用户可以查看此邮件的内容 问题:如何向支持用户显示此消息 使用ExchangeWebservicesManagedAPI2.0,我可以找到此消息及其正文,但消息正文可以有内联图像和其他布局 选项:C# 在ASP.net网页上显示exchange邮件的最佳方式是什么?,c#,asp.net,jquery-plugins,outlook,exchangewebservices,C#,Asp.net,Jquery Plugins,Outlook,Exchangewebservices,我有一个在ASP.net网站上列出的项目上发生的操作列表。这些操作记录在链接到该项的简单sql表中。 i、 e: 为此,我必须查询支持邮箱中的新邮件消息。收到新邮件时,将创建“邮件已收到”操作。“mail Received”(已收到邮件)条目应可单击,以便支持用户可以查看此邮件的内容 问题:如何向支持用户显示此消息 使用ExchangeWebservicesManagedAPI2.0,我可以找到此消息及其正文,但消息正文可以有内联图像和其他布局 选项: 在网页上显示邮件尝试以最佳方式呈现邮件。
->有没有免费的插件可以做到这一点?类似但可以在网页中使用的内容?
->我可以在现代浏览器(主要是IE10和IE11)中防止这种情况吗?
->或者是否有“内置outlook查看器”可用
->有人能想出一个解决这个问题的办法吗
我们使用的是内部部署的Exchange 2010 SP3服务器,应该在明年某个时候迁移到Exchange Online。应用程序正在ASP.NET 4.5上运行,使用MVC 5.0框架。使用此API修补不同的主体类型和检索方法可能是一个解决方案。此处的信息: 查看它们是否返回了相对容易显示的内容,无论是解析HTML正文还是在浏览器中显示RTF正文。我还没玩这么多,手头也没有Exchange服务器,否则我会自己检查一下。如果Exchange在发送邮件时没有仔细阅读HTML,您可能可以解析出src=“cid:contentIdOfAttachment”,并将其替换为指向附件的适当链接,以便在浏览器中显示,但Exchange可以对HTML和CSS做一些有趣的事 为了澄清,您所说的“支持用户”是指支持员工(即技术支持)还是正在接受支持并检查其票证状态的人员?如果要在Outlook中显示和/或回复邮件,此人将访问单个支持邮箱(可能是公用文件夹),还是将邮件转发/复制到此人的个人邮箱
如果我没有弄错,您将把它复制到一个单独的邮箱,然后从那里它就“在”系统之外,所以回复会直接发送给最终用户,并跳过中央支持邮箱。您可以在发送/下载邮件之前通过将“发件人”更改为中央支持邮箱来更改邮件,从而绕过此问题。当支持用户响应时,它会返回到中央支持邮箱,在那里您可以让辅助同步操作(甚至是提取传入邮件的同步操作)对其进行处理,将to/from更改为从中央支持邮箱发送到目标收件人,然后使用UpdateItems将其发送并保存到Sent文件夹。这并不漂亮,但应该是可能的。这是我脑子里想不到的,所以很容易就会有更好的解决办法。我对您正在使用的系统进行了一些假设,因此可能我有点做错了。谢谢您的建议。此API涵盖了在outlook中显示邮件的可能性。。但我上面的两个问题仍然存在。如何防止我的用户以他们自己的名义回复&如何在没有额外“打开”点击的情况下强制显示?
[2013-11-04 18:00]: Problem solved
[2013-11-04 18:00]: Called User
[2013-11-04 14:00]: Mail Received
@{
HttpContext.Current.Response.AddHeader("Content-disposition", "inline;filename=message.msg");
HttpContext.Current.Response.ContentType = "application/vnd.ms-outlook";
}
@(new HtmlString(ViewBag.Body))