public ActionResult Download(string user, IFormCollection llaves) { string pathDescompress = ""; FileModel fileModel = new FileModel(); FileManage fileManage = new FileManage(); fileModel.RegisterFileName = llaves["Register"]; fileModel.RegisterFileName = fileModel.RegisterFileName.Trim(); using (var client = new HttpClient()) { client.BaseAddress = new Uri("https://localhost:44389/api/"); var responseTask = client.PostAsJsonAsync("file/download/", fileModel); responseTask.Wait(); var result = responseTask.Result; if (result.IsSuccessStatusCode) { var read = result.Content.ReadAsStringAsync(); read.Wait(); JsonSerializerOptions name_rule = new JsonSerializerOptions { PropertyNamingPolicy = JsonNamingPolicy.CamelCase, IgnoreNullValues = true }; fileModel = JsonSerializer.Deserialize <FileModel>(read.Result, name_rule); if (fileModel.Receiver == HttpContext.Session.GetString("UserName")) { fileModel.Status = 1; responseTask = client.PostAsJsonAsync("file/edit", fileModel); responseTask.Wait(); } } } if (Path.GetExtension(fileModel.AbsolutePhat) == ".lzw") { using (var client = new HttpClient()) { client.BaseAddress = new Uri("https://localhost:44389/api/"); var responseTask = client.PostAsJsonAsync("file/decompress/", fileModel); responseTask.Wait(); var result = responseTask.Result; if (result.IsSuccessStatusCode) { var read = result.Content.ReadAsStringAsync(); read.Wait(); pathDescompress = read.Result; } } } else { pathDescompress = fileModel.AbsolutePhat; } var ext = Path.GetExtension(pathDescompress).ToLowerInvariant(); return(File(fileManage.RetunFile(pathDescompress), fileManage.GetFileType(ext), fileModel.OriginalFileName)); }