public static ExecuteMultipleResponse SaveMultipleRecords(CdsServiceClient service, List <Entity> records)
        {
            ExecuteMultipleRequest executeMultipleRequest = new ExecuteMultipleRequest()
            {
                Settings = new ExecuteMultipleSettings()
                {
                    ContinueOnError = true,
                    ReturnResponses = true
                },
                Requests = new OrganizationRequestCollection()
            };

            foreach (Entity record in records)
            {
                CreateRequest createRequest = new CreateRequest {
                    Target = record
                };
                executeMultipleRequest.Requests.Add(createRequest);
            }

            ExecuteMultipleResponse responseWithResults =
                (ExecuteMultipleResponse)service.Execute(executeMultipleRequest);

            return(responseWithResults);
        }
        private void ValidateConnection(CdsServiceClient client)
        {
            // Validate it
            var rslt = client.Execute(new WhoAmIRequest());

            Assert.IsType <WhoAmIResponse>(rslt);

            // Clone it. - Validate use
            using (CdsServiceClient client2 = client.Clone())
            {
                rslt = client2.Execute(new WhoAmIRequest());
                Assert.IsType <WhoAmIResponse>(rslt);
            }

            // Create clone chain an break linkage.
            CdsServiceClient client3 = client.Clone();
            CdsServiceClient client4 = client3.Clone();

            rslt = client3.Execute(new WhoAmIRequest());
            Assert.IsType <WhoAmIResponse>(rslt);
            // dispose client3 explicitly
            client3.Dispose();
            rslt = client4.Execute(new WhoAmIRequest());
            Assert.IsType <WhoAmIResponse>(rslt);
            client4.Dispose();
        }
        public static void AssignRecordToUser(CdsServiceClient service, Guid userId, Guid recordId, string recordLogicalName)
        {
            var assign = new AssignRequest
            {
                Assignee = new EntityReference("systemuser",
                                               userId),
                Target = new EntityReference(recordLogicalName,
                                             recordId)
            };

            service.Execute(assign);
        }
        public void ExecuteMessageTests()
        {
            Mock <IOrganizationService> orgSvc = null;
            Mock <MoqHttpMessagehander> fakHttpMethodHander = null;
            CdsServiceClient            cli = null;

            testSupport.SetupMockAndSupport(out orgSvc, out fakHttpMethodHander, out cli);


            // Test that Retrieve Org is working .
            var orgData = cli.Execute(new RetrieveCurrentOrganizationRequest()
            {
                AccessType = Microsoft.Xrm.Sdk.Organization.EndpointAccessType.Default
            });

            Assert.NotNull(orgData);
        }
Esempio n. 5
0
        public static async Task <IActionResult> WhoAmI(
            [HttpTrigger(AuthorizationLevel.Function, "get", Route = null)] HttpRequest req,
            ILogger log)
        {
            Interlocked.Increment(ref counter);
            log.LogInformation($"Counter: {counter}.");
            try
            {
                log.LogInformation("Creating CdsServiceClient.");

                var cdsServiceClient = new CdsServiceClient(new Uri(cdsUri), GetTokenAsync, true);

                log.LogInformation("Executing WhoAmI request.");
                var whoAmIResponse = (WhoAmIResponse)cdsServiceClient.Execute(new WhoAmIRequest());

                log.LogInformation("Returning result.");
                return(new OkObjectResult(whoAmIResponse));
            } catch (Exception ex)
            {
                log.LogError(ex, "Something wrong.");
                return(new BadRequestObjectResult(ex));
            }
        }