【发布时间】:2014-02-26 14:36:28
【问题描述】:
大家好,抱歉我的英语不好。
我正在尝试在 Dynamics CRM 2011 中使用插件分析器,但我无法真正成功地使用它。
首先,当我尝试分析异步插件时,我无法下载错误日志文件(同步正常,弹出消息对话框,我可以单击链接按钮下载它) 可以在异步插件上使用插件分析器吗?如果是,我如何下载错误日志文件?我知道异步插件不会在同一个地方执行,这可能是我没有对话框消息的原因,但我可以看到任务已在 CRM 本身的“参数”“系统任务”中执行。任务的状态是等待。我可以在错误详细信息中看到错误日志之类的内容,但我无法下载。
其次,使用同步插件可以正常工作。我能够下载错误日志文件并将其放入插件注册调试工具中。但是当我附加我的进程并运行开始执行时,我的插件停止在这一行,当插件正常执行时,它可以正常工作:
IOrganizationServiceFactory serviceFactory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
//This line i got null references exception
serviceFactory.GetType().GetProperty("ProxyTypesAssembly").SetValue(serviceFactory, typeof(Account).Assembly, null);
我得到一个空引用异常。此行需要在插件中使用早期绑定。 (如果我删除这一行,我会在插件执行过程中遇到一些错误:“无法将类型为 'Microsoft.Xrm.Sdk.Entity' 的对象转换为类型 '....'。”
经过一些测试,这是他无法使用 Plugin Profiler 获得的属性:
//Null
var myProperty = serviceFactory.GetType().GetProperty("ProxyTypesAssembly");
我使用 Plugin Profiler 获得了该属性的空引用,但在插件正常执行期间,此工作正常。有什么想法吗??
非常感谢!
【问题讨论】: