在多层次项目中管理配置的方法

ASP.NET Core 项目模板随附appsettings.jsonappsettings.Development.json默认添加到CreateDefaultBuilder 中。

因为项目与DbContext我的 ASP.NET Core 项目 ( MyProject.Data)是分开的,所以我需要IDesignTimeDbContextFactory为我的上下文实现,以便像Add-Migration和一样的命令Update-Database工作。我不想为我的连接字符串硬编码,IDesignTimeDbContextFactory但在两个项目中重新使用配置。

我对此几乎没有解决方案,但我想根据您的经验和意见知道什么是最合理的。

  • 落实IDesignTimeDbContextFactory在我的ASP.NET核心(UI层)项目。

  • IDesignTimeDbContextFactory在我的MyProject.Data项目中实现,并移动appsettings.json到某个根目录,或configuration(位于根)项目之间共享的目录。

  • 为数据库创建单独的配置文件,就像database.json将它放在我的.sln文件旁边一样。

我应该如何分享这个?


30秒到达战场
浏览 186回答 2
2回答

不负相思意

我对这个话题的方法/意见:在每个使用 DbContext 的顶层应用程序中使用连接字符串,例如 API/Backend/Frontend,因为它们可以在不同的服务器上运行。所以他们应该有自己的设置文件。要在没有连接字符串的情况下处理来自库的迁移,您可以使用以下方法:cd /projectWithContextImpldotnet ef -s "../projectWithConnString/" migrations list -c NameOfContext我希望这在一定程度上回答了你的问题。
打开App,查看更多内容
随时随地看视频慕课网APP