c# - 将 DomainDbContext 与 IdentityDbContext 解耦
问题描述
我正在建立一个航空公司经理,它拥有自己的航班、航空公司、国家、用户等数据库。
现在我已经到了我想在应用程序中添加身份验证的部分,我意识到 ASP.NET Core Identity 派生自一种特殊的 DbContext,我不确定是否可以将域 DBSet 添加到 IdentityDbContext(基本上制作一个涉及身份和域表的数据库)。
对于这种情况,我没有找到任何“最佳实践”,除了域数据库之外,是否应该使用不同的数据库进行身份验证?如果是这样,我的用户表有不同表的外键(连接到航班的机票,用户描述) - 将用户与数据库分开会破坏一切。
我很感激您的好意,我希望这个帖子能在设计(身份)认证解决方案时向其他初学者介绍最佳行动方案。
提前致谢。
编辑 只是为了澄清,当我说两个不同的上下文时,我也指两个独立的数据库。
解决方案
航空公司经理似乎不是一个小项目,最终可能会扩大。话虽如此,不只是分离数据库而且分离项目/服务的方法怎么样。有利于维护,更灵活。IdentityServer4,首先查看它的 github 存储库。https://github.com/IdentityServer/IdentityServer4 - 您应该也可以在这里看到有关您的应用程序如何集成到其服务的示例。
推荐阅读
- compiler-errors - 为什么编译器说我正在应用许多参数?
- elasticsearch - 无法在 mac 上启动 kibana。“apm”插件的设置生命周期未在 30 秒内完成
- javascript - 如果文件不存在,即使设置了错误处理程序,jQuery ajax 也会出错
- eclipse - 条件时如何用Column重写这个Scala
- apache-camel - 从 Camel JMS 组件向 AMQ Artemis 发送消息时无法创建会话工厂 AMQ219007
- matlab - 边界超像素和邻接矩阵
- rust - 使用 Tokio 的 spawn_blocking 有什么问题?
- gcc - 在 c 中使用内联汇编检查 32 位整数数组中的最大值
- javascript - VS 代码,编写绘制图形的扩展
- discord - 如何创建一个只允许特定文本通道中的特定单词的不和谐机器人