gpt4 book ai didi

c# - 更改连接字符串后 ASP.NET Core 重新注册 dbcontext

转载 作者:太空宇宙 更新时间:2023-11-03 20:52:16 25 4
gpt4 key购买 nike

我有一个 ASP.NET Core 应用程序,它在配置文件中有一个连接字符串键。

如果它的值不正确(例如数据库名称、IP 地址等),我希望能够在用户在配置文件中手动更改后使用新的连接字符串重新注册此 dbcontext 服务。

如何实现?这被认为是一种不好的做法吗?

谢谢。

最佳答案

我看到您正在使用 asp.net core。

理想情况下,您不应在应用程序运行时更改连接字符串,因为这可能会导致您的 Web 应用程序重置(取决于启动配置和 Web 服务器)。

为了回答您的问题,您可以在应用程序运行时更改配置。 ReloadOnChange 参数对您很有用。

只要 appsettings.json 配置文件发生变化,下面的代码就会将 reloadOnChange 设置为 true。

public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.ConfigureAppConfiguration((hostingContext, config) =>
{
config.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
})
.UseStartup<Startup>();

引用:https://learn.microsoft.com/en-us/aspnet/core/fundamentals/configuration/?view=aspnetcore-2.2

关于c# - 更改连接字符串后 ASP.NET Core 重新注册 dbcontext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54124280/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com