public Task <ActionResult> GetOrdersAsync(GetOrdersParameters parameters, [FromServices] IGetOrdersHandler handler, CancellationToken cancellationToken) { if (handler is null) { throw new ArgumentNullException(nameof(handler)); } return(InvokeGetOrdersAsync(parameters, handler, cancellationToken)); }
public Task <GetOrdersResult> ExecuteAsync(GetOrdersParameters parameters, CancellationToken cancellationToken = default) { if (parameters == null) { throw new ArgumentNullException(nameof(parameters)); } return(InvokeExecuteAsync(parameters, cancellationToken)); }
private async Task <GetOrdersResult> InvokeExecuteAsync(GetOrdersParameters parameters, CancellationToken cancellationToken) { var allItems = new List <Order>(); for (var i = 0; i < 347; i++) { allItems.Add( new Order { Id = Guid.NewGuid(), Description = $"Test order {i + 1}" }); } var items = allItems .Skip(parameters.PageIndex) .Take(parameters.PageSize) .ToList(); Pagination <Order> data; if (string.IsNullOrEmpty(parameters.ContinuationToken)) { data = new Pagination <Order>( items, parameters.PageSize, parameters.QueryString, parameters.PageIndex, allItems.Count); } else { data = new Pagination <Order>( items, parameters.PageSize, parameters.QueryString, parameters.ContinuationToken); } return(await Task.FromResult(data)); }
private static async Task <ActionResult> InvokeGetOrdersAsync(GetOrdersParameters parameters, IGetOrdersHandler handler, CancellationToken cancellationToken) { return(await handler.ExecuteAsync(parameters, cancellationToken)); }
public Task <GetOrdersResult> ExecuteAsync(GetOrdersParameters parameters, CancellationToken cancellationToken = default) { var data = new List <Order> { new Order { Id = Guid.Parse("77a33260-0001-441f-ba60-b0a833803fab"), Description = "Hallo11", MyTime = DateTimeOffset.Parse("2020-10-12T21:22:23"), MyEmail = "*****@*****.**", MyNullableDateTime = DateTimeOffset.Parse("2020-10-12T21:22:23"), MyDateTime = DateTimeOffset.Parse("2020-10-12T21:22:23"), MyNumber = 20.2, MyInteger = 42, MyBool = true, MyUri = new Uri("http://www.dr.dk"), MyByte = "Hallo110", MyStringList = null, MyLong = 42, DeliveryAddress = new Address { StreetName = "Hallo1", StreetNumber = "Hallo11", PostalCode = "Hallo12", CityName = "Hallo13", MyCountry = new Country { Name = "Hallo11", Alpha2Code = "Ha", Alpha3Code = "Hal", }, }, }, new Order { Id = Guid.Parse("77a33260-0002-441f-ba60-b0a833803fab"), Description = "Hallo21", MyTime = DateTimeOffset.Parse("2020-10-12T21:22:23"), MyEmail = "*****@*****.**", MyNullableDateTime = DateTimeOffset.Parse("2020-10-12T21:22:23"), MyDateTime = DateTimeOffset.Parse("2020-10-12T21:22:23"), MyNumber = 20.2, MyInteger = 42, MyBool = true, MyUri = new Uri("http://www.dr.dk"), MyByte = "Hallo210", MyStringList = null, MyLong = 42, DeliveryAddress = new Address { StreetName = "Hallo2", StreetNumber = "Hallo21", PostalCode = "Hallo22", CityName = "Hallo23", MyCountry = new Country { Name = "Hallo21", Alpha2Code = "Ha", Alpha3Code = "Hal", }, }, }, new Order { Id = Guid.Parse("77a33260-0003-441f-ba60-b0a833803fab"), Description = "Hallo31", MyTime = DateTimeOffset.Parse("2020-10-12T21:22:23"), MyEmail = "*****@*****.**", MyNullableDateTime = DateTimeOffset.Parse("2020-10-12T21:22:23"), MyDateTime = DateTimeOffset.Parse("2020-10-12T21:22:23"), MyNumber = 20.2, MyInteger = 42, MyBool = true, MyUri = new Uri("http://www.dr.dk"), MyByte = "Hallo310", MyStringList = null, MyLong = 42, DeliveryAddress = new Address { StreetName = "Hallo3", StreetNumber = "Hallo31", PostalCode = "Hallo32", CityName = "Hallo33", MyCountry = new Country { Name = "Hallo31", Alpha2Code = "Ha", Alpha3Code = "Hal", }, }, }, }; var paginationData = new Pagination <Order>(data, parameters.PageSize, parameters.QueryString, parameters.ContinuationToken); return(Task.FromResult(GetOrdersResult.Ok(paginationData))); }
#pragma warning disable CS1998 // Async method lacks 'await' operators and will run synchronously private async Task <GetOrdersResult> InvokeExecuteAsync(GetOrdersParameters parameters, CancellationToken cancellationToken) #pragma warning restore CS1998 // Async method lacks 'await' operators and will run synchronously { throw new System.NotImplementedException(); }