【发布时间】:2021-07-07 10:02:55
【问题描述】:
我正在转换一些 MVC 示例代码以在我正在构建的 Razor 页面应用程序中使用。在原始 MVC 代码中,一些链接使用以下 asp 助手(例如):
<a asp-controller="Home" asp-action="Preview" asp-route-id="option">A link</a>
在原始 MVC 代码中定义了一个 HomeController 控制器类。
如果我在“页面”文件夹下名为“主页”的目录中有一个名为“预览”的页面,我可以让它在我的 Razor 页面应用程序中工作。然后我使用@pages 指令映射路线
@page "{option}"
在“Preview.cshtml”页面的顶部,并将字符串传递给 Preview.cshtml.cs 文件中 PreviewModel 的类定义中的 OnGet 方法。
这工作正常,但这是我应该做的吗? Razor 页面应用程序中没有 HomeController,那么是否有最佳实践 Razor 页面方法来执行此操作?
【问题讨论】: