mysql - MySqlException:表 'membership.aspnetusertokens' 不存在 ASP.NET Core 5 标识
问题描述
我正在我的网站上设置 Microsoft ASP.NET Core 身份,作为继续使用其他 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)
);
推荐阅读
- flutter - How to convert bytes into image in Flutter?
- express - 我写了一个类似教程中解释的代码,但它不起作用。描述中包含错误
- javascript - React:为什么我不能将数据从一个功能组件传递到另一个功能组件?
- reactjs - 海图 | 网络图 - 有没有办法在单击父节点时展开叶节点?
- python - python中是否有一个随机函数可以在一定范围内获得公平的结果?
- ios - iOS 模拟器在添加 Crashlytics 并强制使应用程序崩溃后卡在启动屏幕上
- macos - 在 virtualbox 上配置 macOS 虚拟机时出现未知配置值“/DmisystemVersion”
- postgresql - 当连接数增加时,PgBouncer 性能下降
- puppeteer - 木偶戏中的自动播放
- c++ - 返回带有自定义比较器的 std::set