我的剃刀页面有一个基本抽象类,如下所示:
public abstract class NGBaseRazorPage : Page
{
protected NGBaseRazorPage()
{
}
public Guid PageId { get; } = Guid.NewGuid();
}
我有一个像这样的基本 PageModel:
public abstract class NGBasePageModel : PageModel
{
[BindProperty]
public Guid PageId { get; }
}
现在我想从继承自 NGBaseRazorPage 的 razor 页面上的 NGBaseRazorPage 访问 PageModel,如下所示。
@page "/TestPage"
@inherits NGBaseRazorPage
@model SomeAwesomePageModel // Already inherrited from NGBasePageModel.
{
}
仅供参考:我的项目类型是 ASP .NET Core,它基于 .NET 7.0。 另外,我在 Github 上分享了一个最小的回复来展示我想要的东西
谢谢你。
尝试在 Index 的表单中添加以下代码,将 PageId 传递给 post 方法:
<input name="PageId" type="hidden" value="@PageId" />
完整形式如:
<form method="post">
<div>
<label>This is the page id</label>
<br />
<label type="text">@PageId</label>
</div>
<input name="PageId" type="hidden" value="@PageId" />
<div>
<button type="submit">Post</button>
</div>
</form>
结果: