public async Task Can_Update_Api_Resource() { using (var ctx = await TestDbContext.Create(nameof(Can_Update_Api_Resource))) { var entity = new ApiResource() { Address = "http://abc", HttpMethod = DotNetAccessControl.domain.enums.HttpMethods.GET, Title = "Some Title" }; ctx.ApiResources.Add(entity); await ctx.SaveChangesAsync(); var mapper = new MapperConfiguration(cfg => cfg.AddProfile(new MappingProfile())); var model = new UpdateApiResourceDto( entity.Id, "http://Test", DotNetAccessControl.domain.enums.HttpMethods.POST, "Test Title" ); var request = new UpdateApiResource(model); var response = await new UpdateApiResourceHandler(ctx, mapper.CreateMapper()).Handle(request, CancellationToken.None); var toCheck = await ctx.ApiResources.AsNoTracking().SingleAsync(x => x.Id == entity.Id); Assert.Equal(model.Title, toCheck.Title); Assert.Equal(model.Address, toCheck.Address); Assert.Equal(model.HttpMethod, toCheck.HttpMethod); } }
public async Task <bool> Update(UpdateApiResource model) { var entity = await _apiresourceRepository.GetAll().Include(c => c.UserClaims).FirstOrDefaultAsync(d => d.Id == model.Id); var apiresource = _mapper.Map <UpdateApiResource, ApiResource>(model, entity); _apiresourceRepository.Update(apiresource); return(await _apiresourceRepository.SaveChangesAsync() > 0); }
public async Task <IActionResult> UpdateApiResource([FromBody] UpdateApiResource apiResource) { if (!ModelState.IsValid) { return(BadRequest(ModelStateErrors)); } var result = await _apiresourceService.Update(apiResource); return(ResultResponse(result, "修改api资源成功")); }