2016-11-24 7 views
0

Webサーバーを呼び出すCRMワークフロープラグインを開発しています。私はプラグインdllに含まれるようにILMergeを使用してマージするプラグインで、実際のWebコール(HttpClientを使用)に自分の外部DLLを使用しています。これは失敗しないでワークフローを実行すると、DLLからメソッドを正常に使用できるようになります。CRMプラグインがサードパーティDLL(ILMerge後)でWebリクエストを実行できません

しかし、Webリクエストを実行するDLL内のメソッドを呼び出そうとすると、nullpointerで失敗します。そのコードを私のプラグインDLLに完全にコピーすると、Webリクエストは失敗しません。両方のDLLが署名されています(私は同じキーと異なるキーの両方で試しました)。

私には何が欠けていますか?私はプラグインソースに直接コピーすると同じコードが動作し、外部API DLLはコンソールプロジェクトで使用すると機能します。設定ファイルやapiやプラグインに関連するものはありません。

答えて

0

独自の外部アセンブリがHttpClientを参照する場合は、System.Net.HttpアセンブリもILMergeに含める必要があります。マージされたアセンブリには、プラグインアセンブリ、外部アセンブリ、System.Net.Httpアセンブリが含まれている必要があります。

関連する問題