【发布时间】:2018-12-12 17:17:34
【问题描述】:
我正在测试 RazorPages 和 .Net Core 2.1
我刚刚采用了一个新的项目模板并创建了一个 Partial。 这些是文件的相关/添加内容。
我的问题是
1) 直接问题:在部分:OnGetAsync(也不是 public void OnGet())没有被调用。我在 View on Model on line 中得到了 NullReference-exceptiion
@foreach (var item in Model.ImageBE) {
我试图切断 DB-call 并从 contructor 显式调用 OnGet,但没有区别。
2) 我找不到 Page(index) 具有 Partials 模型实例的示例(下面的 ImageGalleryModel)。但这是编译器唯一能接受的。我这样做完全错了吗?
Index.cshtml(页面)
...
[partial name="_ImageGallery" model="Model.ImageGallery" /]
...
索引.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();
}
}
【问题讨论】:
标签: asp.net-core-2.0 razor-pages