问题
Note: We cannot use remote debugger bcoz of limitations.
I have used Plugin profiler in the past, but never faced this error or any issues.
I have tried some solutions by Aileen but no luck. (http://missdynamicscrm.blogspot.com/2014/05/debug-crm-2013-using-plugin-profiler.html)
Am getting this below error in my new assignment. Anybody know whats going on?
Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=7.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: Unexpected Exception in the Plug-in ProfilerDetail:
<OrganizationServiceFault xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/xrm/2011/Contracts">
<ErrorCode>-2147220891</ErrorCode>
<ErrorDetails xmlns:d2p1="http://schemas.datacontract.org/2004/07/System.Collections.Generic">
<KeyValuePairOfstringanyType>
<d2p1:key>OperationStatus</d2p1:key>
<d2p1:value xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">3</d2p1:value>
</KeyValuePairOfstringanyType>
<KeyValuePairOfstringanyType>
<d2p1:key>SubErrorCode</d2p1:key>
<d2p1:value xmlns:d4p1="http://www.w3.org/2001/XMLSchema" i:type="d4p1:string">-2146233088</d2p1:value>
</KeyValuePairOfstringanyType>
</ErrorDetails>
<Message>Unexpected Exception in the Plug-in Profiler</Message>
<Timestamp>2017-04-25T16:46:17.1055295Z</Timestamp>
<InnerFault i:nil="true" />
<TraceText>
[PluginProfiler.Plugins: PluginProfiler.Plugins.ProfilerPlugin]
[fd941d99-d629-e711-810c-005056ab45d6: ABCcorp.Xrm.MyProject.Plugins.MyPlugin: Pre Update of new_myentity with Pre Image (Profiler)]
An exception occurred during the initialization of the Plug-in Profiler.
Unhandled Exception: System.ServiceModel.CommunicationObjectFaultedException: The communication object, System.ServiceModel.Channels.ServiceChannel, cannot be used for communication because it is in the Faulted state.
Server stack trace:
at System.ServiceModel.Channels.CommunicationObject.ThrowIfDisposedOrImmutable()
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at System.ServiceModel.ICommunicationObject.Open()
at Microsoft.Crm.Sandbox.SandboxClientBase`1.Open()
at Microsoft.Crm.Sandbox.SandboxClientBase`1.get_Proxy()
at Microsoft.Crm.Sandbox.SandboxOrganizationService.ProcessException(Exception e, SandboxSdkClient client)
at Microsoft.Crm.Sandbox.SandboxOrganizationService.Execute(String operation, Byte[] serializedRequest)
at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg)
Exception rethrown at [1]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at Microsoft.Crm.Sandbox.ISandboxOrganizationService.Execute(String operation, Byte[] serializedRequest)
at Microsoft.Crm.Sandbox.SandboxOrganizationServiceWrapper.ExecuteInternal(OrganizationRequest request)
at Microsoft.Crm.Sandbox.SandboxOrganizationServiceWrapper.RetrieveInternal(String entityName, Guid id, ColumnSet columnSet)
at Microsoft.Crm.Sandbox.SandboxOrganizationServiceWrapper.Retrieve(String entityName, Guid entityId, ColumnSet columnSet)
at PluginProfiler.Plugins.PluginLoaderUtility.RefreshAssembly(IOrganizationService service, ProfilerConfiguration config, PluginInitializationContext context)
at PluginProfiler.Plugins.PluginLoaderUtility.RefreshPluginInitializationContext(IOrganizationServiceFactory factory, ProfilerConfiguration config, PluginInitializationContext currentContext)
at PluginProfiler.Plugins.ProfilerBase`1.InitializeProfiler(Dictionary`2 services, T operationContext, ProfilerPluginContext& context)
</TraceText>
</OrganizationServiceFault>
回答1:
A couple thoughts...
From what version of the SDK are you using the Plugin Profiler? Does it match the version of CRM?
I generally like to have my plugin code also available via a Console app so that I can debug and step through it without any profiling, remote debugging, etc.
This article shows how to get started with a console app that connects to CRM: https://msdn.microsoft.com/en-us/library/jj602970.aspx
My typical architecture is to have a Visual Studio shared project that contains all the business logic, and then a Plugin project and a Console project, each of which gets the target record and passes it into the shared project.
For example: a visual studio folder containing typical plugin projects
回答2:
Looks like your sandbox processing service is in a faulted state. I would restart that process as that usually resolves the issue. This service should be on the same box as the Async Processing service, but can be in a different location I believe.
Either way, locate and restart "Microsoft Dynamics CRM Sandbox Processing Service"
If that doesn't work reboot the box it is located on.
That usually resolves the issue.
来源:https://stackoverflow.com/questions/43616768/crm-2015-on-premise-plugin-profiler-error