我列出了ASP.net网站上列出的项目的动作列表。这些操作记录在链接到项目的简单sql表中。 即:
[2013-11-04 18:00]: Problem solved
[2013-11-04 18:00]: Called User
[2013-11-04 14:00]: Mail Received
为此,我将不得不在支持邮箱中查询新邮件。收到新邮件时,会创建“收到邮件”操作。 “邮件收到”条目应该是可点击的,以便支持用户可以看到此邮件的内容。
问题:如何向支持用户显示此消息?
使用Exchange Webservices托管API 2.0我可以找到此消息和他的正文,但消息正文可以有内嵌图像和其他布局。
选项:
在网页上显示消息尝试以最佳方式呈现邮件消息 - >是否有任何免费插件可以执行此操作?类似于this但可以在网页中使用的插件?
使用Outlook显示此电子邮件。
由于支持用户将在其计算机上安装Outlook 2010或更高版本,因此第3个选项似乎是合乎逻辑的选择,但如何在Outlook中显示此消息?
@{
HttpContext.Current.Response.AddHeader("Content-disposition", "inline;filename=message.msg");
HttpContext.Current.Response.ContentType = "application/vnd.ms-outlook";
}
@(new HtmlString(ViewBag.Body))
显然不起作用.. .msg文件似乎是二进制文件。 我是否需要API?
但即使有效,我也会遇到这些问题:
我们正在使用内部部署的Exchange 2010 SP3服务器,该服务器应在明年某个时候迁移到Exchange Online。应用程序使用MVC 5.0框架在ASP.NET 4.5上运行。
答案 0 :(得分:1)
将此API用于download messages as .msg file directly from Exchange server
可能是一种解决方案答案 1 :(得分:0)
修补不同的体型和检索方法。信息在这里:
http://msdn.microsoft.com/en-us/library/ee217562(v=exchg.80).aspx
查看是否有任何内容返回相对容易显示的内容,无论是解析HTML正文还是在浏览器中显示RTF正文。我没有这么多,并没有方便的Exchange服务器或我检查自己。如果Exchange在发送邮件时没有咀嚼HTML,您可以解析出src =“cid:contentIdOfAttachment”并将其替换为附件的正确链接以在浏览器中显示,但Exchange可以执行有趣的事情到HTML和CSS。
为了澄清,“支持用户”是指支持员工(即技术支持)还是正在接受支持并检查其机票状态的人员?如果要在Outlook中显示和/或回复邮件,此人是否可以访问单个支持邮箱(可能是公用文件夹),还是将邮件转发/复制到此人的个人邮箱?
如果我说得对,你将把它复制到一个单独的邮箱,并从那里“系统外”,所以回复直接发送给最终用户并跳过中央支持邮箱。您可以通过将“from”更改为“from”到中央支持邮箱,在发送/下载邮件之前更改邮件,以避免这种情况。当支持用户响应时,它会返回到中央支持邮箱,您可以在其中进行辅助同步操作(甚至是获取传入邮件的同一操作)处理它,将更改为/从发送给目标收件人中央支持邮箱,并使用UpdateItems将其保存到Sent文件夹。它不漂亮,但它应该是可能的。不过,这只是我的头脑,所以可以很容易地找到更好的解决方案。我正在对你正在使用的系统做一些假设,所以也许我的事情有点不对。