asp.net-core - 我需要 services.AddMvc 吗?
问题描述
我试图找出为什么在我看到的所有文档services.AddMvc
或services.AddMvcCore
Startup.cs 但在由 VS 创建的 ASP.NET Core MVC 3.1 模板中我没有 AddMvc 但 mvc 仍然有效....
我唯一与 MVC 相关的是
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
endpoints.MapRazorPages();
});
谁能解释为什么?
解决方案
正如文档所说,asp.net core 3.0+ 模板使用这些新方法AddControllersWithViews
,,AddRazorPages
而AddControllers
不是AddMvc
.
但是,AddMvc
它会继续像以前的版本一样运行。AddMvc()
实际上只是一堆注册服务的其他方法的包装器。见来源:
您可以使用AddMvc
注册 MVC、Razor 页面、API 或使用个人AddControllersWithViews
(仅适用于 MVC)和AddRazorPages
(仅适用于 Razor 页面)。
推荐阅读
- javascript - 点击按钮后如何调用函数并显示结果
- amazon-web-services - aws chime deploy 错误:无法创建/更新堆栈:堆栈名称服务员 StackCreateComplete 失败:服务员遇到终端故障状态
- python-3.x - 将时间序列数据剪裁到最近的小时或最近的一天
- python - 导入具有相同命名函数的多个模块而不会发生命名空间冲突
- python - Deeppavlov:ValueError:numpy.ndarray 大小已更改,可能表示二进制不兼容。预期来自 C 标头的 88,从 PyObject 获得 80
- python - Python Dataframe:考虑每行不同的列
- prometheus - 在 Prometheus PromQL 中获取最后一小时的平均费率
- android - 在 169.254.0.0/16 中连接到没有 DHCP 和私有 IP 地址的 WiFi 网络
- python - 以线性时间复杂度在两个列表中找到共同元素
- python - 张量的 numpy.random.choice 语句的替代品是什么?