如何从Controller(而不是StartUp.cs)设置IdentityOptions的值?

时间:2018-05-04 12:40:12

标签: asp.net-core asp.net-identity

我想在控制器下面调用属性,因为我只想为从该控制器创建的用户应用这些验证。

services.Configure<IdentityOptions>(options =>{
options.Password.RequireDigit = false;
options.Password.RequiredLength = 5;
options.Password.RequireLowercase = true;
options.Password.RequireNonLetterOrDigit = true;
options.Password.RequireUppercase = false;});

他们是这样做的吗?

感谢。

1 个答案:

答案 0 :(得分:0)

您可以使用Options pattern在控制器中获取IdentityOptions,如下所示:

private IdentityOptions _op;

public HomeController(IOptions<IdentityOptions> op)
{
   _op = op.Value;
}

public IActionResult Index()
{
   //Example.
   _op.Password.RequireDigit = false;

   return View();
}

有关详情,请参阅Options pattern in ASP.NET Core