1

我们正在创建一个与 CRM 2011 对话的 ASP.NET MVC 应用程序。我们正在使用 Xrm.Client.Services.OrganizationService。为此,我们有一个单例模式。

在负载下,我们看到一个 ObjectDisposedException(无法访问已处置的对象)。我认为单身人士不是去这里的方式。

我正在考虑一个 [ThreadStatic] 单例,或者一个服务池,或者任何其他可能有帮助的东西。有人知道可以建立的 CRM 连接数量有任何限制吗?有人体验过disposed service吗?有人告诉我,一次连接到 CRM 的组织服务太多也会有问题,所以这就是为什么我没有为每次访问 CRM 创建一个新服务。

感谢您的任何帮助,您可以提供!如果需要更多说明,请询问。

4

1 回答 1

2

OrganizationService 不是多线程安全的。它也是用户感知的,因此根据您实现服务创建的方式,您可能会或可能无法在用户之间共享它。(如果你不模仿它,你应该没问题,但是你会失去所有集成的 CRM 安全性)

在某个时间点,我确实编写了一个 CRM 组织服务池,但它与在需要时创建服务并没有什么不同。理想情况下,您可能只想为每个用户请求创建一次服务。

于 2015-06-04T20:17:44.313 回答