Plugin通过InvalidPluginExecutionException抛出的异常如果包含的信息太多,会给微软CRM4.0用户带来不好的界面体验,如果可以实现换行功能,那效果会好很多,遗憾的是通过support客户化无法实现换行,但是可以通过unsupport客户化方法来实现,在unsupport客户化前请备份好修改到的文件。
步骤如下:
1、打开 /CRMWeb/_common/error/dlg_error.aspx文件
2、增加javascript 函数,代码如下:
function HTMLMessage() { var ErrorMessage = document.getElementById("ErrorMessage"); ErrorMessage.innerHTML = ErrorMessage.innerText; }
3、在onload事件中调用HTMLMessage函数,代码如下:
<body onload="HTMLMessage()">
4、保存
5、新建一个Plugin,抛出一个异常,并显示HTML格式消息,代码如下:
using System; using System.Collections.Generic; using System.Text; using Microsoft.Crm.Sdk; using Microsoft.Crm.Sdk.Query; using Microsoft.Crm.SdkTypeProxy; namespace HtmlMessagePluginException { public class PluginException : IPlugin { public void Execute(IPluginExecutionContext context) { throw new InvalidPluginExecutionException("<strong style=\"font-size:16px;color:#0067c6;\">提供支持HTML的异常信息</strong> <BR> <strong style=\"font-size:16px;color:#0067c6;\">很好很强大!</strong>"); } } }
6、注册到微软CRM4.0
7、运行结果如下图: