コード例 #1
0
        public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next)
        {
            var          financierId = (Guid)context.ActionArguments["financierId"];
            GetFinancier queryParams = new GetFinancier {
                FinancierID = financierId
            };
            FinancierDetail readModel = await _queryService.Query(queryParams);

            if (readModel is null)
            {
                _logger.LogInfo($"A financier with id: {financierId} does not exist in the database.");
                context.Result = new NotFoundResult();
            }
            else
            {
                EditFinancierInfo editFinancierInfo = new EditFinancierInfo
                {
                    Id            = readModel.FinancierId,
                    FinancierName = readModel.FinancierName,
                    Telephone     = readModel.Telephone,
                    IsActive      = readModel.IsActive,
                    UserId        = readModel.UserId
                };

                context.HttpContext.Items.Add("EditFinancierInfo", editFinancierInfo);
                await next();
            }
        }
コード例 #2
0
        public async Task <IActionResult> EditFinancierInfo([FromBody] EditFinancierInfo writeModel)
        {
            try
            {
                await _commandHandler.Handle(writeModel);

                return(Ok());
            }
            catch (Exception ex)
            {
                _logger.LogError(ex.Message);
                return(BadRequest(ex.Message));
            }
        }
コード例 #3
0
        public async Task ShouldUpdate_Financier_UsingEditFinancierInfoWriteModel()
        {
            var model = new EditFinancierInfo
            {
                Id            = new Guid("01da50f9-021b-4d03-853a-3fd2c95e207d"),
                FinancierName = "ABC Financiers, Inc.",
                Telephone     = "214-654-9874",
                IsActive      = true,
                UserId        = new Guid("660bb318-649e-470d-9d2b-693bfb0b2744")
            };

            await _financierCmdHdlr.Handle(model);

            Financier result = await _dbContext.Financiers.FindAsync(model.Id);

            Assert.Equal(model.FinancierName, result.FinancierName);
            Assert.Equal(model.Telephone, result.Telephone);;
        }