コンテキストは私が生成されたクライアントを使用してCRMプラグインからWCFサービスを呼び出すいSystem.Security.SecurityException
をスローします。 (System.ServiceModel.ClientBase<T>
)CRMプラグインは、サンドボックス分離モードで動作する必要があります。 WCFクライアントは、純粋なwsdlとxsdから生成されました。 Xmlのシリアライゼーションを使用しているようですので、リフレクションは必要ありません。
プラグインの実行がスロー:
System.Security.SecurityException:タイプの許可の要求「System.Security.Permissions.SecurityPermission、
をスタックトレース、あるようです
サーバースタックトレース:WCFクライアントの実装のコアから来る System.ServiceModel.Channels.ServiceChannel.HandleでSystem.ServiceModel.Channels.ServiceChannel.Call(Stringアクション、Boolean oneway、ProxyOperationRuntime操作、Object [] ins、Object [] outs、TimeSpanタイムアウト)での返信(ProxyOperationRuntime操作、ProxyRpc & rpc) System.ServiceModel.Channelsで [0]に再スローSystem.ServiceModel.Channels.ServiceChannelProxy.Invokeで.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCallで、ProxyOperationRuntime動作) (IMessageがメッセージ)
例外:System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessageで (IMessage reqMsg、IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData & msgData、Int32型)Microsoft.Crm.Sandbox.SandboxCustomActivity.ExecuteでMicrosoft.Crm.Sandbox.ISandboxHost.ExecuteCustomWorkflowActivityAndReturnTraceInfo(SandboxCallInfo callInfo、SandboxCustomActivityExecutionContext RequestContextの、のGUID pluginAssemblyId、のInt32 sourceHash、文字列のAssemblyName、のGuid pluginTypeId、文字pluginTypeName、列assemblyContents、ブールreturnTraceInfo) で(SandboxClientクライアント、SandboxCallTracker callTracker、IExecutionContext RequestContextの、文字列assemblyContents、ブールreturnTraceInfo)Microsoft.Crm.Sandbox.SandboxCodeUnit.Execute(IExecutionContextコンテキスト)で
質問
WCFクライアントをサンドボックス分離モードおよびCRM Onlineで使用できない文は正しいですか? (または何かが欠けていますか?)
もしそうなら、回避策はありますか?すべてのメッセージのレンダリングと解析を再実装する必要がありますか?
[サンプル:サンドボックスプラグインからのWebアクセス](https://msdn.microsoft.com/en-us/library/gg509030.aspx)をご覧になりましたか? –
はい、これは私の最初のgoogleの結果_before_私は質問をした。 Unfortunatelly WebClientは、WCF SOAPクライアント(生成された型を処理し、SOAP req/reponsesをレンダリングする)よりもはるかに低レベルのコンポーネントです.WebClientを使用すると、SOAPを実装しなければならず、多くの標準に準拠しなければなりません。 –