Скачать файлы в API ASP. Net Core - PullRequest
0 голосов
/ 13 марта 2020

Я пытаюсь создать API, который загружает указанный файл c с сервера в ASP. Net Core. Я использую ASP. NET Boilerplate. Я испробовал каждое решение, которое нашел, и ни одно из них не помогло мне. большинство решений, которые я пробовал, реализуют что-то вроде этого:

public async Task<IActionResult> Download(string filename)  
  {  
      if (filename == null)  
          return Content("filename not present");  

      var path = Path.Combine(  
                     Directory.GetCurrentDirectory(),  
                     "wwwroot", filename);  

      var memory = new MemoryStream();  
      using (var stream = new FileStream(path, FileMode.Open))  
      {  
          await stream.CopyToAsync(memory);  
      }  
      memory.Position = 0;  
      return File(memory, GetContentType(path), Path.GetFileName(path));  
  } 

И при его использовании я всегда получаю сообщение об ошибке в последней строке Non-invocable member 'File' cannot be used like a method.

1 Ответ

0 голосов
/ 13 марта 2020

Если вы видите эту ошибку во время компиляции, возможно, это связано с тем, что компилятор считает, что вы пытаетесь вызвать конструктор класса System.IO.File вместо вызова метода File() в классе System.Web.Mvc.Controller.

Попробуйте вызвать метод, явно выделив его для экземпляра с помощью this.File(...).

...