ExecuteMultipleResponse Dynamics CRM Ошибка модульных тестов

В настоящее время я пытаюсь написать тесты для приложения Dynamics CRM, используя Fake XRM Easy. Этот код дает мне ошибку.

                var executeMultiple = new ExecuteMultipleRequest
            {
                Settings = new ExecuteMultipleSettings
                {
                    ContinueOnError = true,
                    ReturnResponses = true
                },
                Requests = new OrganizationRequestCollection()
            };

            executeMultiple.Requests.AddRange(this.requestBag.Select(x => x.request));

            try
            {
                var batchResponse = (ExecuteMultipleResponse)this.orgService.Execute(executeMultiple);

                foreach (var response in batchResponse.Responses)
                {
                    this.requestsPerformedByServiceCounter++;
                    this.OnResponseReceived(new ResponseReceivedEventArgs
                    {
                        Fault = response.Fault,
                        RequestIndex = response.RequestIndex,
                        Response = response.Response,
                        Request = this.requestBag[response.RequestIndex].request,
                        Identifier = this.requestBag[response.RequestIndex].identifier,
                        TotalRequestsPerformed = this.requestsPerformedByServiceCounter,
                    });
                }

                this.requestBag.Clear();

Этот метод вызывает верхний метод

      foreach (var company in this.companies)
            {
                EntityReference existedAccountRef = null;
                if (!string.IsNullOrEmpty(company.id.ToString()))
                {
                    var existedAccount = this.crmService.IsCompanyExistInCrm(company.id);
                    existedAccountRef = existedAccount != null ? existedAccount.ToEntityReference() : null;
                }

                if (existedAccountRef != null)
                {
                    bulkExecutionService.Update(new Account()
                    {
                        AccountId = existedAccountRef.Id,
                        Name = company.name,
                        odx_Bank_Account_Number = company.bank_account_number,
                        // odx_Company_share_Capital = company.company_share_capital, todo
                        odx_Is_Foreign = company.is_foreign,
                        odx_KRS = company.krs,
                        odx_Legal_form = company.legal_form,
                        odx_NIP = company.nip,
                        odx_Paynow_Created_at = company.created_at,
                        odx_Paynow_Modified_at = company.modified_at,
                        odx_PaynowID = company.id,
                        odx_pkd = company.pkd,
                        odx_regon = company.regon,
                        odx_Vat_EU = company.vat_eu
                    }, company.id);
                }
                else
                {
                    bulkExecutionService.Create(new Account()
                    {
                        Name = company.name,
                        odx_Bank_Account_Number = company.bank_account_number,
                        // odx_Company_share_Capital = company.company_share_capital, todo
                        odx_Is_Foreign = company.is_foreign,
                        odx_KRS = company.krs,
                        odx_Legal_form = company.legal_form,
                        odx_NIP = company.nip,
                        odx_Paynow_Created_at = company.created_at,
                        odx_Paynow_Modified_at = company.modified_at,
                        odx_PaynowID = company.id,
                        odx_pkd = company.pkd,
                        odx_regon = company.regon,
                        odx_Vat_EU = company.vat_eu
                    }, company.id);
                }
            }

            bulkExecutionService.FinalizeExecutor();

Ошибка, которую я получаю, находится в этой строке:

      var batchResponse = (ExecuteMultipleResponse)this.orgService.Execute(executeMultiple);

FakeXrmEasy.Abstractions.Exceptions.PullRequestException: «Исключение: тип запроса организации «Microsoft.Xrm.Sdk.Messages.ExecuteMultipleRequest» еще не поддерживается...

Честно говоря, я не знаю, что мне с этим делать.

1 ответ

Вы пытались установить пакет FakeXrmEasy.Messages?

FakeXrmEasy v2 или более поздние версии теперь используют модульную архитектуру.

Сообщения о создании, извлечении, обновлении, удалении, обновлении, ассоциировании или диссоциации находятся в пакете FakeXrmEasy.Core, но другие сообщения теперь находятся в этом выделенном пакете FakeXrmEasy.Messages.

Это описано в разделе «Установка» на сайте документации.

Другие вопросы по тегам