C# · 12月 31, 2021

c# – 我应该将应用程序上下文与用于身份的ApplicationDbContext分开吗?

在Visual Studio 2003中,创建ASP.NET项目时,它会生成一个IdentityModels.cs文件,该文件包含一个ApplicationDbContext类,该类继承自最终从DbContext继承的IdentityDbContext< ApplicationUser>.

我应该仅将这个上下文保留在与帐户相关的实体中,并为应用程序中的所有其他实体创建一个单独的上下文,还是应该将其混合使用.

任何安全问题或原因,不包括我的整个应用程序的所有实体在一个上下文中?

解决方法 没有正确的答案.没有与两个不同的上下文相关的安全问题.这一切都归结于您的架构 – 您是否需要为您的域中的用户创建引用.在不同的域中,您不能将EF保留从用户表到域的外键.

几次我已经开始使用2个不同的dbContexts,但是已经厌倦了额外的维护,没有收获和合并的东西.

而且,由于您正在询问这一点,因此您可能不会从2个独立的数据库环境中获取任何内容,仅在未来添加额外的代码和不必要的维护.所以我说只有一个开始.你真的需要时可以随时分开.