首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Blazor ASP.NET托管身份验证与已有的带有身份表的数据库

Blazor ASP.NET托管身份验证与已有的带有身份表的数据库
EN

Stack Overflow用户
提问于 2021-03-04 07:51:58
回答 1查看 215关注 0票数 0

我见过使用没有标识表的现有ASP.NET数据库实现implementing的示例。但我的问题是,如何在Blazor应用程序中使用已经实现了标识表的现有ASP.NET数据库实现implemented。

是否像修改ApplicationUser模型以满足AspNetUsers表方案一样简单?或者,这种实现方式还有更多内容?

Blazor应用程序是从头开始的,wasm和ASP.NET核心托管。

EN

回答 1

Stack Overflow用户

发布于 2021-03-04 18:50:56

在首次运行具有身份(具有单个用户帐户)的新Blazor应用程序之前,必须创建初始数据库迁移,并在目标数据库上运行该迁移。

如果您查看迁移代码,就会发现有一个Up和一个Down方法,它们创建(Up方法)和删除(Down方法)数据库中的标识表。

在添加迁移之后,但在将其应用于目标数据库之前,您可以编辑.cs迁移文件、删除或注释代码,因此迁移不会创建表,而是使用已创建的表。在文件中保留"insert into __migrations“这句话,因为这个插入的行是EF Core用来测试应用程序当前迁移是否与应用于数据库的上一次迁移对齐的。

当然,您的模型和现有的数据库表必须兼容。如果您对用户模型或任何其他身份方面进行了更改(例如,更改密钥类型),则此方法可能无效。在这些情况下,您可以重命名现有的表,让标准迁移创建新表,然后使用SQL脚本将用户、角色、声明和其他身份信息从旧表迁移到新表。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66466633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档