我使用自己的一组选项制作了自定义PasswordValidator:
class MyValidator : Identity.PasswordValidator<TUser>
{
Task<IdentityResult> ValidateAsync(UserManager<TUser> manager, TUser user, string password)
{
var options = // retrieve options
if (options.CustomRule.Matches(password))
// etc
}
}
class MyPasswordOptions : Identity.PasswordOptions
{
object CustomRule { get; set; }
}
现在我想访问MyValidator中的MyPasswordOptions实例。我可以,例如:
Microsoft的原始实现可以通过UserManager的内部属性访问选项,如果它不是内部的,这对我来说似乎是最好的选择。
问题: Microsoft在自定义实现中访问Asp Identity Core中的选项的目的是什么?说,我没有自定义选项类。我仍然无法轻松访问MyValidator类中的IdentityOptions,而无需注入它们。虽然原始类(Identity.PasswordValidator)可以。
答案 0 :(得分:1)