3

我正在尝试使用最后一个 CRM SDK 中的 CrmServiceClient 类从 Dynamics 365 环境中检索数据。

CrmServiceClient 缓存连接信息,即使在创建和释放 CrmServiceClient 的新实例时也是如此!. 我的应用程序连接到不同的 CRM 网址,所以我使用标志“RequireNewInstance=true;” 在连接字符串中以避免缓存。

使用此标志时,性能很糟糕(检索任何数据超过 30 秒)。

任何线索在访问不同的在线 CRM 时如何获得可接受的性能?

这是一个简单的示例代码,但任何服务调用都需要大量时间,不仅如此:

string connectionString="Url=https://myTest.api.crm.dynamics.com/; Username=myUser@myTest.onmicrosoft.com; Password=myPassword; AuthType=Office365;RequireNewInstance=true;";

using (var client = new Microsoft.Xrm.Tooling.Connector.CrmServiceClient(connectionString))
    {
        var orgService = (IOrganizationService)client.OrganizationWebProxyClient ?? client.OrganizationServiceProxy;
        var response = (RetrieveVersionResponse)orgService.Execute(new RetrieveVersionRequest());
    }

注意:我曾经使用以前 SDK 中的 CrmConnection 类,这有更好的响应时间,但现在不能用于在线访问 CRM(v 8.1.1 或更高版本)

4

0 回答 0