【发布时间】:2021-05-13 06:31:30
【问题描述】:
我有一个 10 多年前的 ASP.NET MVC 应用程序,我正准备更新/升级到 ASP.NET Core 5。我正在尝试决定是否坚持使用 MVC 方法,这可能会使升级过程更容易或切换到 Razor 页面。这是一个相当大的应用程序,应用程序中使用的模型来自解决方案中的库项目。
话虽如此,我有两个问题:
- 旧版应用程序中的某些页面允许大量小的编辑场景,并且它们在控制器中具有相应的操作方法。我知道对于剃须刀页面,我不使用控制器。相反,所有代码都在页面后面的代码中。是否可以/建议在剃须刀页面的代码中使用 20 多种操作方法。此操作方法将支持那些编辑场景。
- 如上所述,
MVC应用程序中使用的所有模型都来自库项目。我很确定这个问题的答案是肯定的,但我想确保我仍然可以对 Razor 页面执行相同的操作,并使用库项目中现有的类作为我的 razor 页面的模型。
【问题讨论】:
-
我认为你应该混合使用 MVC 和 razor 页面。 Razor 页面的思想是将页面逻辑彼此分离(每个都与相应的视图配对)。所以这当然不能完全从 MVC 改编,因为我们知道 MVC 中的一些端点可以在多个页面/视图中使用。处理程序的数量没有限制,只要它们都用于一页就可以了。
-
我建议你在这个SO问题stackoverflow.com/a/48844411/3559462上查看这个答案,里面有详细的分析,你也可以查看其他答案
标签: asp.net-mvc asp.net-core razor razor-pages