ASP .NET Identity-自定义IUserStore FindByNameAsync方法

民子

我想重写IUserStore FindByNameAsync方法。方法用于类的CreateAsync方法中UserManager如果我IdentityUser从该方法返回实例,则可以正常工作,但是如果我返回null(例如,没有用户使用该用户名),则会得到:

{“ Message”:“发生错误。”,“ ExceptionMessage”:“对象引用未设置为对象的实例。”,“ ExceptionType”:“ System.NullReferenceException”,“ StackTrace”:“在Microsoft.AspNet .Identity.UserValidator`2。ValidateUserName d__4.MoveNext()

这是我的替代方法

public Task<MyUser> FindByNameAsync(string userName)
{
    return null;
}

我认为它在UserValidator类中失败-ValidateUserName下面代码片段中的方法。

else
{
    var owner = await Manager.FindByNameAsync(user.UserName).WithCurrentCulture();
    if (owner != null && !EqualityComparer<TKey>.Default.Equals(owner.Id, user.Id))
    {
        errors.Add(String.Format(CultureInfo.CurrentCulture, Resources.DuplicateName, user.UserName));
    }
}

FindByNameAsync方法返回什么以避免此异常?

伊戈尔

您仍然必须在代码中返回一个Task,请参见下面的更改。这是因为调用方期望一个Task,并且Task中的结果是您希望返回的具有null值的内容。通过null直接返回,调用者尝试展开任务的尝试(通过awaitTask.Result)失败,从而生成NullReferenceException

public Task<MyUser> FindByNameAsync(string userName)
{
    return Task.FromResult((MyUser)null);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

自定义Asp.Net Identity 3.0

来自分类Dev

Asp.net Identity 2自定义用户和自定义表名称

来自分类Dev

如何为 Asp.Net Identity 自定义表名(例如从 AspNetUsers 更改为自定义名称)

来自分类Dev

Asp.net Identity 2.0使用自定义唯一属性扩展UserValidator

来自分类Dev

在ASP.NET Identity中为AspNetUsers表使用自定义属性

来自分类Dev

ASP.NET Identity外部身份验证提供程序自定义图标

来自分类Dev

自定义ASP.NET Identity(OWIN)使用实体框架的详细信息

来自分类Dev

ASP.Net Identity 2-来自OAuthAuthorizationServerProvider的自定义响应

来自分类Dev

使用自定义角色在ASP.NET Identity中初始化RoleManager

来自分类Dev

在ASP.NET Identity中自定义IdentityUser类时,将创建可空字段

来自分类Dev

如何自定义Asp.net Identity 2用户名已采取的验证消息?

来自分类Dev

自定义MVC5 ASP.NET Identity中的cookie值

来自分类Dev

使用ASP.NET Identity 2.0和MVC 5的自定义单点登录

来自分类Dev

自定义MVC5 ASP.NET Identity中的cookie值

来自分类Dev

将自定义列添加到ASP.NET Identity

来自分类Dev

使用ASP.NET Identity 3的自定义密码策略

来自分类Dev

在MVC 5中的ASP.NET Identity 3上管理自定义用户属性

来自分类Dev

使用自定义 List<property> 扩展 ASP .NET Identity 并在视图中访问它

来自分类Dev

ASP.net Web API 2自定义方法

来自分类Dev

在Visual Studio 2013中使用Asp.net Identity自定义注册表单(Web表单)

来自分类Dev

如何将ASP.NET Identity与您自己的自定义表一起使用

来自分类Dev

如何使用 Asp.Net Identity 检查 Azure 表中是否存在记录并返回自定义响应

来自分类Dev

如何使用 ASP.NET Core identity v preview 3.0 创建自定义用户和角色?

来自分类Dev

具有ASP.Net Identity的ASP.NET MVC5中的自定义验证和角色提供程序

来自分类Dev

asp.net自定义错误

来自分类Dev

如何使用ASP-5 / MVC-6 / Identity 3为自定义Asp.Net身份存储提供程序注册中间件

来自分类Dev

.Net Identity 2自定义验证文本

来自分类Dev

在Identity Asp.net core 3 MVC中创建服务IUserStore时出错

来自分类Dev

ASP.NET Identity Extend方法访问用户属性

Related 相关文章

  1. 1

    自定义Asp.Net Identity 3.0

  2. 2

    Asp.net Identity 2自定义用户和自定义表名称

  3. 3

    如何为 Asp.Net Identity 自定义表名(例如从 AspNetUsers 更改为自定义名称)

  4. 4

    Asp.net Identity 2.0使用自定义唯一属性扩展UserValidator

  5. 5

    在ASP.NET Identity中为AspNetUsers表使用自定义属性

  6. 6

    ASP.NET Identity外部身份验证提供程序自定义图标

  7. 7

    自定义ASP.NET Identity(OWIN)使用实体框架的详细信息

  8. 8

    ASP.Net Identity 2-来自OAuthAuthorizationServerProvider的自定义响应

  9. 9

    使用自定义角色在ASP.NET Identity中初始化RoleManager

  10. 10

    在ASP.NET Identity中自定义IdentityUser类时,将创建可空字段

  11. 11

    如何自定义Asp.net Identity 2用户名已采取的验证消息?

  12. 12

    自定义MVC5 ASP.NET Identity中的cookie值

  13. 13

    使用ASP.NET Identity 2.0和MVC 5的自定义单点登录

  14. 14

    自定义MVC5 ASP.NET Identity中的cookie值

  15. 15

    将自定义列添加到ASP.NET Identity

  16. 16

    使用ASP.NET Identity 3的自定义密码策略

  17. 17

    在MVC 5中的ASP.NET Identity 3上管理自定义用户属性

  18. 18

    使用自定义 List<property> 扩展 ASP .NET Identity 并在视图中访问它

  19. 19

    ASP.net Web API 2自定义方法

  20. 20

    在Visual Studio 2013中使用Asp.net Identity自定义注册表单(Web表单)

  21. 21

    如何将ASP.NET Identity与您自己的自定义表一起使用

  22. 22

    如何使用 Asp.Net Identity 检查 Azure 表中是否存在记录并返回自定义响应

  23. 23

    如何使用 ASP.NET Core identity v preview 3.0 创建自定义用户和角色?

  24. 24

    具有ASP.Net Identity的ASP.NET MVC5中的自定义验证和角色提供程序

  25. 25

    asp.net自定义错误

  26. 26

    如何使用ASP-5 / MVC-6 / Identity 3为自定义Asp.Net身份存储提供程序注册中间件

  27. 27

    .Net Identity 2自定义验证文本

  28. 28

    在Identity Asp.net core 3 MVC中创建服务IUserStore时出错

  29. 29

    ASP.NET Identity Extend方法访问用户属性

热门标签

归档