Моя среда разработки VS19, ASP. Net Core Razor (не MVC) 3.1 Страницы и Entity Framework Core.
У меня есть следующие класс / модель в моих моделях папка, которая имеет одно свойство:
````
public class FilesObject
{
public string[] Files { get; set; } = new string[1000];
}
В обработчике OnGet () моего файла index.cs я написал следующий код для возврата массива, содержащего список файлов в указанном каталоге (wwwroot \ documents)
public class IndexModel : PageModel
{
private readonly ApplicationDbContext _context;
private readonly IWebHostEnvironment _hostingEnvironment;
public IndexModel(ApplicationDbContext context, IWebHostEnvironment hostingEnvironment)
{
_context = context;
_hostingEnvironment = hostingEnvironment;
}
[BindProperty]
public FilesObject FilesObject { get; set; }
public IActionResult OnGet()
{
var webRootPath = _hostingEnvironment.WebRootPath;
var docsPath = Path.Combine(webRootPath, "documents");
FilesObject = Directory.GetFiles(docsPath);
return Page();
}
}
Я получаю следующую ошибку: Ошибка CS0029 Невозможно неявно преобразовать строку типа в Models.FilesObject в этой строке:
FilesObject = Directory.GetFiles(docsPath);
Первоначально я пытался сделать что-то подобное this:
var DocumentInfo = Path.Combine (webRootPath, "documents");
Это работает хорошо, однако я не могу вернуть DocumentInfo на мою страницу index.cs html, чтобы сделать что-нибудь с этим, как ForEach l oop.
Я понимаю, что говорит мне ошибка, я просто не знаю, как ее исправить.
Любая помощь приветствуется. Заранее спасибо за ваше время.