Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core 在ASP.NET Core中何时使用AuthorizeFilter_Asp.net Core_Asp.net Core Mvc_Asp.net Core 1.0 - Fatal编程技术网

Asp.net core 在ASP.NET Core中何时使用AuthorizeFilter

Asp.net core 在ASP.NET Core中何时使用AuthorizeFilter,asp.net-core,asp.net-core-mvc,asp.net-core-1.0,Asp.net Core,Asp.net Core Mvc,Asp.net Core 1.0,我已经开始研究ASP.NET核心,特别是授权。模型已经改变了很多,我必须说,与上一个实现相比,我发现它有点混乱 我看到过许多帖子哀叹现在不可能将参数传递给授权属性构造函数,而是我们现在有了策略/需求/处理程序 那么,AuthorizeFilter的用户案例到底是什么呢?它与属性有何不同?我应该在什么时候实现需求/处理程序,什么时候(或者应该曾经)实现授权过滤器(看起来它可能更接近旧模型) 我在网上找不到任何详细介绍这一方面的资源,因此非常感谢您提供的任何启示。在AuthorizeFilter类上

我已经开始研究ASP.NET核心,特别是授权。模型已经改变了很多,我必须说,与上一个实现相比,我发现它有点混乱

我看到过许多帖子哀叹现在不可能将参数传递给授权属性构造函数,而是我们现在有了策略/需求/处理程序

那么,AuthorizeFilter的用户案例到底是什么呢?它与属性有何不同?我应该在什么时候实现需求/处理程序,什么时候(或者应该曾经)实现授权过滤器(看起来它可能更接近旧模型)


我在网上找不到任何详细介绍这一方面的资源,因此非常感谢您提供的任何启示。

AuthorizeFilter
类上面的文档中说:

MVC recognizes the <see cref="T:Microsoft.AspNetCore.Authorization.AuthorizeAttribute" /> 
and adds an instance of this filter to the associated action or controller.
MVC识别
并将此筛选器的实例添加到关联的操作或控制器。
因此,当创建控制器时,
AuthorizeFilter
的实例将在出现
AuthorizeAttribute
时添加到控制器过滤器中

基本上,他们将装饰:
AuthorizeAttribute
与实现:
AuthorizeFilter
分开

因此,如果您想要干净的代码,可以使用
AuthorizeAttribute
来修饰控制器类

如果您想要更易于理解/逻辑的代码,可以在控制器构造函数方法中将te
AuthorizeFilter
添加到过滤器中