Я тестирую RazorPages и .Net Core 2.1
Я только что взял новый шаблон проекта и создал Partial.
Это релевантное / добавленное содержимое файлов.
Моя проблема
1) Непосредственная проблема: частично: OnGetAsync (ни public void OnGet ()) не вызывается. и я получаю исключение NullReference при просмотре модели в строке
@foreach (var item in Model.ImageBE) {
Я пытался отключить DB-вызов и явно вызвать OnGet из конструктора, но без разницы.
2) Я не могу найти пример, где страница (индекс) имеет экземпляр модели Partials (ImageGalleryModel ниже). но это единственное, что компилятор примет. Я делаю это совершенно неправильно?
Index.cshtml (страница)
...
[partial name="_ImageGallery" model="Model.ImageGallery" /]
...
Index.cshtml.cs
public class IndexModel : PageModel
{
ApplicationDbContext mContext;
public ImageGalleryModel ImageGallery;
public IndexModel(ApplicationDbContext context)
{
mContext = context;
ImageGallery = new ImageGalleryModel(mContext);
}
public void OnGet()
{
}
}
_ImageGallery.cshtml (частично)
[table class="table"]
@foreach (var item in Model.ImageBE) {
...
_ImageGallery.cshtml.cs
public class ImageGalleryModel : PageModel
{
private readonly ApplicationDbContext _context;
public IList<ImageBE> ImageBE { get; set; }
public ImageGalleryModel(Photiqo.Data.ApplicationDbContext context)
{
_context = context;
}
public async Task OnGetAsync()
{
ImageBE = await _context.ImageBE.ToListAsync();
}
}