1

CRM 2011 と通信する ASP.NET MVC アプリを作成しています。Xrm.Client.Services.OrganizationService を使用しています。これには、シングルトン パターンが用意されています。

負荷がかかると、ObjectDisposedException が発生します (破棄されたオブジェクトにアクセスできません)。シングルトンはここに行く方法ではないと考えています。

[ThreadStatic] シングルトン、またはサービスのプール、または役立つ可能性があるものを検討しています。確立できる CRM への接続数に制限があることを知っている人はいますか? 以前に廃棄サービスを経験した人はいますか?一度に CRM に接続する組織サービスが多すぎると問題が発生する可能性があると聞いたので、CRM へのヒットごとに新しい組織サービスを作成しないのはそのためです。

ご協力いただきありがとうございます。さらに説明が必要な場合は、お問い合わせください。

4

1 に答える 1

2

OrganizationService はマルチスレッド セーフではありません。これはユーザーにも対応しているため、サービスの作成をどのように実装したかによって、ユーザー間でサービスを共有できる場合とできない場合があります。(偽装していない場合は問題ありませんが、統合された CRM セキュリティのすべてを失うことになります)

ある時点で CRM OrganizationService プールを作成しましたが、実際には、必要に応じてサービスを作成する場合と何ら変わりはありませんでした。理想的には、ユーザーの要求ごとに 1 回だけサービスを作成する必要があります。

于 2015-06-04T20:17:44.313 に答える