【发布时间】:2019-12-05 05:22:55
【问题描述】:
我不确定我做了什么,但我似乎搞砸了我的 ASP.NET Core 身份。它正在工作。我能够创建一个帐户并登录。但是现在我无法登录,忘记密码功能也不会给我发邮件。一些测试表明,当有与请求匹配的数据时,UserManager.FindByNameAsync() 正在返回 null。
当我尝试调试它时,我得到了一些奇怪的结果。以下行返回我数据库中的所有Goals。
var goals = DbContext.Goals.AsEnumerable();
但是,以下行返回一个空结果集。 (我在 AspNetUsers 表中有一行。)
var users = DbContext.Users.AsEnumerable();
我没有在这个项目中搭建 Identity。这里有几个相关的类。
ApplicationUser.cs
public class ApplicationUser : IdentityUser
{
// Space to add custom fields
}
ApplicationDbContext.cs
public class ApplicationDbContext : IdentityDbContext
{
public DbSet<Area> Areas { get; set; }
public DbSet<Goal> Goals { get; set; }
public DbSet<Task> Tasks { get; set; }
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
: base(options)
{
}
}
所以基本上任何试图访问身份类的东西都会失败。什么可能阻止我阅读用户表?我唯一能想到的就是我的ApplicationUser 课程搞砸了。任何人都可以推荐什么我可以尝试隔离这个?我被屏蔽了。
【问题讨论】:
-
您是否能够收集到任何错误消息?
-
@DaniDev:我没有收到任何错误。它只是返回一个空的结果集,就好像该表没有行一样。
标签: c# asp.net-core razor-pages asp.net-core-identity