假设我有一个 Controller ,它有到一种角色的路由和其他角色的其他路由器。我想让代码更清晰地将这些路由分成部分类。我知道我可以做到。

但我想知道我是否可以这样做:

[Authorize(Roles = "Admin")]
[MyLogger]
public partial class TheController{
     // Admin routes
}


[Authorize(Roles = "OtherRole")]
public partial class TheController{
     // Other routes that require auth
}


[AllowAnonymous]
public partial class TheController{
     // public routes
}

并且每个分部类中的路由只获得该分部类的属性。

是否可以?

最佳答案

在您的示例中,只有一个类 TheController 具有这两个属性。最好的方法是让两条路由和一个路由约束不绑定(bind)到任何基于角色允许一个或另一个的参数。

关于c# - ASP.NET MVC 中具有不同属性的部分 Controller ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45895487/

10-09 13:31