Загрузить ZIP-файл из WCF - ASP.NET CORE - PullRequest
1 голос
/ 11 октября 2019

Я обращаюсь к службе WCF в основном приложении ASP.NET, которая возвращает содержимое и имя файла в строковом формате.

Я хочу загрузить zip-файл из действия контроллера из данных, возвращаемых службой, написанных ниже. код.

Я могу загрузить файл, но при попытке открыть его подсказку как недействительную. Может кто-нибудь помочь с кодом.

var data = await someService.GetZipFile();

byte[] bytes = Encoding.ASCII.GetBytes(data.Content);

return File(bytes, "application/zip", data.FileName);

1 Ответ

1 голос
/ 11 октября 2019

Если формат содержимого строки - строка base64, попробуйте следующее

public async Task<ActionResult> Download(...) {    
    var data = await someService.GetZipFile(...);

    String filename = data.FileName;
    String content = data.Content;

    //convert from base64 string
    byte[] bytes = Convert.FromBase64String(content);

    return File(bytes, "application/zip", filename);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...