public async Task <ApiResult <string> > UpdateImage(UpdateImageUser bundle) { var user = await _userManager.FindByNameAsync(bundle.Name); if (bundle.File != null) { if (user.PathImage != null) { await _storageService.DeleteFileAsync(user.PathImage); } } // lưu lại ảnh mới user.PathImage = await this.SaveFile(bundle.File); await _userManager.UpdateAsync(user); return(new ApiSuccessResult <string>(user.PathImage)); }
public async Task <ApiResult <string> > UpdateImage(UpdateImageUser bundle) { var requestContent = new MultipartFormDataContent(); byte[] data; using (var br = new BinaryReader(bundle.File.OpenReadStream())) { data = br.ReadBytes((int)bundle.File.OpenReadStream().Length); } ByteArrayContent bytes = new ByteArrayContent(data); requestContent.Add(bytes, "file", bundle.File.FileName); requestContent.Add(new StringContent(bundle.Name.ToString()), "name"); var sessions = _httpContextAccessor .HttpContext .Session .GetString(SystemConstants.AppSettings.Token); var client = _httpClientFactory.CreateClient(); client.BaseAddress = new Uri(_configuration[SystemConstants.AppSettings.BaseAddress]); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(SystemConstants.Bearer, sessions); var url = $"/api/User/image/"; var response = await client.PutAsync(url, requestContent); var result = await response.Content.ReadAsStringAsync(); if (response.IsSuccessStatusCode) { return(JsonConvert.DeserializeObject <ApiSuccessResult <string> >(result)); } return(JsonConvert.DeserializeObject <ApiErrorResult <string> >(result)); }
public async Task <IActionResult> UpdateImage([FromForm] UpdateImageUser bundle) { var result = await _userApiClient.UpdateImage(bundle); return(Ok(result)); }