.NET Core (.NET 6) 中控制器后缀是必需的吗

问题描述 投票:0回答:1
public class Home : controller
{
    public IActionResult Index()
    {
        return view();
    }
}

我创建的上面的类没有控制器后缀。

下面是我在startup.cs类.NET 6中的路由:

app.UseEndpoints(endpoints =>
{

    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller=Home}/{action=Index}/{id?}"
       );
});

我只是想确认附加“Controller”作为后缀是否只是一个命名约定,或者不遵循它是否有任何潜在的后果。尽管我的 .NET 6 应用程序目前似乎运行没有问题。

asp.net-core .net-core
1个回答
0
投票

重申此处所写内容:

控制器是一个可实例化的类,通常是公共的,其中 至少满足以下条件之一:

  • 类名以Controller为后缀。
  • 该类继承自名称以Controller为后缀的类。
  • [Controller] 属性应用于类。

所以不,控制器后缀在 ASP.NET Core 中不是必需的。只需满足上述条件之一即可。

尽管我建议使用后缀,因为它会让您的浏览解决方案变得更轻松。

© www.soinside.com 2019 - 2024. All rights reserved.