MySqlException : Table 'membership.aspnetusertokens' doesn't exist ASP. NET Core 5 身份

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

我正在我的网站上设置 Microsoft ASP.NET Core Identity,作为转向其他 Web 应用程序的练习。

我已经到了尝试实现两因素身份验证的部分。我收到如标题所示的错误,因为我的数据库中没有 AspNetUserTokens 作为表。我似乎无法在任何地方找到这个详细的架构。有谁知道这个表的架构吗?

这是我当前数据库的脚本:


DROP DATABASE Membership;
CREATE DATABASE Membership;
USE Membership;

CREATE TABLE `AspNetRoles` (
  `Id` varchar(128) NOT NULL,
  `Name` varchar(256) NOT NULL,
  PRIMARY KEY (`Id`)
);

CREATE TABLE `AspNetUsers` (
  `Id` varchar(128) NOT NULL,
  `Email` varchar(256) DEFAULT NULL,
  `NormalizedEmail` varchar(256) DEFAULT NULL,
  `EmailConfirmed` tinyint NOT NULL,
  `PasswordHash` longtext,
  `SecurityStamp` longtext,
  `PhoneNumber` longtext,
  `PhoneNumberConfirmed` tinyint NOT NULL,
  `TwoFactorEnabled` tinyint NOT NULL,
  `LockoutEndDateUtc` datetime DEFAULT NULL,
  `LockoutEnabled` tinyint NOT NULL,
  `AccessFailedCount` int NOT NULL,
  `UserName` varchar(256) NOT NULL,
  `NormalizedUserName` varchar(256) NOT NULL,
  `ConcurrencyStamp` longtext,
  `CustomTag` longtext,
  `LockoutEnd` datetime,
  PRIMARY KEY (`Id`)
);

CREATE TABLE `AspNetUserClaims` (
  `Id` int NOT NULL AUTO_INCREMENT,
  `UserId` varchar(128) NOT NULL,
  `ClaimType` longtext,
  `ClaimValue` longtext,
  PRIMARY KEY (`Id`),
  UNIQUE KEY `Id` (`Id`),
  KEY `UserId` (`UserId`),
  CONSTRAINT `ApplicationUser_Claims` FOREIGN KEY (`UserId`) REFERENCES `AspNetUsers` (`Id`) ON DELETE CASCADE ON UPDATE NO ACTION
);

CREATE TABLE `AspNetUserLogins` (
  `LoginProvider` varchar(128) NOT NULL,
  `ProviderKey` varchar(128) NOT NULL,
  `UserId` varchar(128) NOT NULL,
  PRIMARY KEY (`LoginProvider`,`ProviderKey`,`UserId`),
  KEY `ApplicationUser_Logins` (`UserId`),
  CONSTRAINT `ApplicationUser_Logins` FOREIGN KEY (`UserId`) REFERENCES `AspNetUsers` (`Id`) ON DELETE CASCADE ON UPDATE NO ACTION
);

CREATE TABLE `AspNetUserRoles` (
  `UserId` varchar(128) NOT NULL,
  `RoleId` varchar(128) NOT NULL,
  PRIMARY KEY (`UserId`,`RoleId`),
  KEY `IdentityRole_Users` (`RoleId`),
  CONSTRAINT `ApplicationUser_Roles` FOREIGN KEY (`UserId`) REFERENCES `AspNetUsers` (`Id`) ON DELETE CASCADE ON UPDATE NO ACTION,
  CONSTRAINT `IdentityRole_Users` FOREIGN KEY (`RoleId`) REFERENCES `AspNetRoles` (`Id`) ON DELETE CASCADE ON UPDATE NO ACTION
);

CREATE TABLE `AspNetUserTokens` (
?????
);

非常感谢!

最佳答案

CREATE TABLE [dbo].[AspNetUserTokens] (
    [UserId]        NVARCHAR (450) NOT NULL,
    [LoginProvider] NVARCHAR (450) NOT NULL,
    [Name]          NVARCHAR (450) NOT NULL,
    [Value]         NVARCHAR (MAX) NULL,
    CONSTRAINT [PK_AspNetUserTokens] PRIMARY KEY CLUSTERED ([UserId] ASC, [LoginProvider] ASC, [Name] ASC)
);

关于MySqlException : Table 'membership.aspnetusertokens' doesn't exist ASP. NET Core 5 身份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69523716/

相关文章:

c++ - 为什么 std::bad_alloc 会被 get_driver_instance() 抛出?

asp.net - Service Fabric 中的 .NET Core RC2

c# - 超时后阻止来自 C# NetworkStream 的传入数据

asp.net-mvc - IdentityUserLogin 不包含 User 的定义

MySQL 变量优先级

python - CubesViewer 服务器并不总是加载多维数据集

c# - MSBUILD : error MSB1003: Specify a project or solution file

asp.net-mvc - ASP .Net MVC 和 WCF 身份(声明)集成

asp.net-mvc-5 - 允许用户在 ASP.NET Identity 2.0 中向其他用户授予其帐户的权限

mysql - 连接表属性的 Activerecord OR 条件