Sql server 在.net core中添加和使用多个ConnectionString
我是.Net Core的新手-我需要添加2个连接字符串(一个用于测试db,一个用于live db),并希望同时连接到这两个字符串-即连接到live db并将数据传输到测试db。下面是我的Sql server 在.net core中添加和使用多个ConnectionString,sql-server,asp.net-mvc,entity-framework,.net-core,Sql Server,Asp.net Mvc,Entity Framework,.net Core,我是.Net Core的新手-我需要添加2个连接字符串(一个用于测试db,一个用于live db),并希望同时连接到这两个字符串-即连接到live db并将数据传输到测试db。下面是我的appsettings.json: { "ConnectionStrings": { "DefaultConnection": "Server=PC\\SQLEXPRESS;Database=[DB];User Id=[Username];Password=[Password];", "Mar
appsettings.json
:
{
"ConnectionStrings": {
"DefaultConnection": "Server=PC\\SQLEXPRESS;Database=[DB];User Id=[Username];Password=[Password];",
"MarkingManagerLIVEConnection": "Server=[IP];Database=[DB];User Id=[Username];Password=[Password]"
},
"Logging": {
"LogLevel": {
"Default": "Warning"
}
},
"AllowedHosts": "*"
}
我认为我需要注册以下内容:
private static void RegisterDatabase(IServiceCollection services, IConfiguration config)
{
services.AddDbContext<MarkingManagerDbContext>(options => options.UseSqlServer(config.GetConnectionString("DefaultConnection")));
services.AddDbContext<MarkingManagerDbContext>(liveoptions => liveoptions.UseSqlServer(config.GetConnectionString("MarkingManagerLIVEConnection")));
}
如何使用“Live”连接字符串?还是我遗漏了什么
谢谢你的帮助 使用多个环境进行研究我没有详细阅读,但根据我阅读的内容,这是为了确定您是要使用开发环境还是生产环境?我希望能够连接到Prod DB,获取数据并插入到我的测试DB中。为什么?我知道您可能需要第二个连接来进行应用程序测试,但是1。不同时连接到您的实时连接和2。您确实不需要通过应用程序将数据从一个数据库传输到另一个数据库。请尝试在您的DBs上传输数据,并根据您是部署还是测试应用程序,分别对一个连接进行注释。使用多个环境进行研究我没有详细阅读,但根据我阅读的内容,这是为了确定您是要使用开发环境还是生产环境?我希望能够连接到Prod DB,获取数据并插入到我的测试DB中。为什么?我知道您可能需要第二个连接来进行应用程序测试,但是1。不同时连接到您的实时连接和2。您确实不需要通过应用程序将数据从一个数据库传输到另一个数据库。尝试在您的DBs上传输数据,并根据您是推出还是测试应用程序,分别对一个连接进行注释。
static void Main(string[] args)
{
Console.Write("Register Services");
var services = new ServiceCollection();
RegisterServices.Register(services);
Console.WriteLine("=>Done");
_services = services.BuildServiceProvider();
Console.Write("DB Configuration");
var context = _services.GetRequiredService<MarkingManagerDbContext>();
var mmSeed = _services.GetRequiredService<MarkingManagerSeed>();
if (context.Database.EnsureCreated())
{
context.Database.Migrate();
var mmSeedTesk = mmSeed.Seed();
mmSeedTesk.Wait();
}
Console.WriteLine("=>Done");
Console.WriteLine("Press any key to end the process");
Console.ReadLine();
}