2017-09-30 23 views
0

私はASP.NET MVC5アプリケーションで作業していますが、私はCrmServiceClientに慣れていないので、どのアプローチが自分のアプリケーションに適しているかを判断する際に助けが必要です。CrmServiceClientを使用した場合のHTTP要求ベースの接続とアプリケーションの有効期限の接続

少しの説明アプリケーションがどのように考えられているかに関わらず、アプリケーションには、アプリケーションで動作するユーザー/エージェントがあります。最も大きな問題は、どのように見えるかです。私はすべてのユーザ/エージェントのために彼自身のインスタンス/接続CrmServiceClient(各ユーザはCRMの "systemuser"となり、彼の資格情報を提供する)か、CrmServiceClient(CRMからの管理者として)のインスタンス/操作。接続ベース

HTTPリクエスト:
この方法で私は新しいインスタンスを作成します(新しい接続を開く)と、要求が上にあるとき、私はそれをDispose()すべてのユーザーが作ったすべての 要求のためならばどのようCrmServiceClient行動することを確認していませんか?私はすべてのユーザーのための新しいインスタンスを取得するか、私はすでにいくつかの以前の要求で接続したユーザーのための同じインスタンスを取得しますか?

アプリケーション寿命の接続:
アプリケーションが起動し、アプリケーション全体の寿命のためのオープン要求が同じインスタンスを使用することになり作るので、すべてのすべてのユーザーにそれを維持するとき、私はCrmServiceClientのインスタンス/接続を作成することになり、このアプローチでは。 CRMにオープンなインスタンス/接続が1つしかないため、これは大きなパフォーマンス上の問題となりますか? しばらくしてインスタンス/接続がどのように動作しますか?それは自動的に閉じるか開いていますか? (簡略化のため、アプリケーションを日、月、年などに実行する必要があるとしましょう)

答えて

0

CrmServiceClientについてはわかりませんが、HttpClientはアプリケーションライフタイムusing構造体も各要求の後に廃棄されません)。

CrmServiceClientがどのような構造で使用されているか確認できますか?

+0

'CrmServiceClient'は' OrganizationServiceProxy'を使用していますか、それとも他のことを意味しましたか?とにかく私は**アプリケーションライフタイム接続**を選択し、私は 'CrmServiceClient'のカスタム接続プールを実装しました。 – Genato

関連する問題