Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.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 mvc MVC 5 ASPNET标识不支持每种类型的多个对象集。但我在整个项目中只有一个数据库集_Asp.net Mvc_Asp.net Identity 2 - Fatal编程技术网

Asp.net mvc MVC 5 ASPNET标识不支持每种类型的多个对象集。但我在整个项目中只有一个数据库集

Asp.net mvc MVC 5 ASPNET标识不支持每种类型的多个对象集。但我在整个项目中只有一个数据库集,asp.net-mvc,asp.net-identity-2,Asp.net Mvc,Asp.net Identity 2,我正在尝试登录web应用程序。数据库已经存在,所以我使用说明来定制将在其上执行登录的表。有一两个错误,我设法修复,现在我陷入这个,我真的不明白它从何而来。 我的背景是这样的 public class ApplicationDbContext : IdentityDbContext<TblAdmin> { public ApplicationDbContext() : base("TelecomConnection", throwIfV1Schema: fals

我正在尝试登录web应用程序。数据库已经存在,所以我使用说明来定制将在其上执行登录的表。有一两个错误,我设法修复,现在我陷入这个,我真的不明白它从何而来。 我的背景是这样的

public class ApplicationDbContext : IdentityDbContext<TblAdmin>
{
    public ApplicationDbContext()
        : base("TelecomConnection", throwIfV1Schema: false)
    {
        Database.SetInitializer<ApplicationDbContext>(null);
    }
    public DbSet<TblAdmin> TblAdmins { get; set; }

    public static ApplicationDbContext Create()
    {
        return new ApplicationDbContext();
    }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Entity<TblAdmin>().ToTable("tblAdmins");
    }
}
存在这种情况的整个方法是:

 public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
    {
        if (!ModelState.IsValid)
        {
            return View(model);
        }

        // This doesn't count login failures towards account lockout
        // To enable password failures to trigger account lockout, change to shouldLockout: true

        var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe,shouldLockout:false);
        switch (result)
        {
            case SignInStatus.Success:
                return RedirectToLocal(returnUrl);
            case SignInStatus.LockedOut:
                return View("Lockout");
            case SignInStatus.RequiresVerification:
                return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe });
            case SignInStatus.Failure:
                ModelState.AddModelError("", "Wrong Password.");
                return View(model);
            default:
                ModelState.AddModelError("", "Invalid login attempt.");
                return View(model);
        }
    }
我试着搜索了整个项目,甚至找不到全世界的用户。 谁能告诉我怎么解决这个问题

IdentityDbContext已经为TUser实现了一个数据库集:


TblAdmin现在由两个数据库集跟踪。

谢谢Chris的回答。是否有可能因为单词english Is not my national language IdentityDbContext而禁止实现其DbSet?我需要我的,以便使用其他表而不是AspNetUsers进行登录,这是我找到的解决方案。否。那是不可能的。但是,您不需要自己的DbSet来完成所需的任务,只需将[TableTblAdmins]添加到类中或使用fluent config设置所需的表名即可。
 public async Task<ActionResult> Login(LoginViewModel model, string returnUrl)
    {
        if (!ModelState.IsValid)
        {
            return View(model);
        }

        // This doesn't count login failures towards account lockout
        // To enable password failures to trigger account lockout, change to shouldLockout: true

        var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe,shouldLockout:false);
        switch (result)
        {
            case SignInStatus.Success:
                return RedirectToLocal(returnUrl);
            case SignInStatus.LockedOut:
                return View("Lockout");
            case SignInStatus.RequiresVerification:
                return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe });
            case SignInStatus.Failure:
                ModelState.AddModelError("", "Wrong Password.");
                return View(model);
            default:
                ModelState.AddModelError("", "Invalid login attempt.");
                return View(model);
        }
    }
public IDbSet<TUser> Users { get; set; }
public DbSet<TblAdmin> TblAdmins { get; set; }