将参数传递给EF Core的IDesignTimeDbContextFactory

文斯

如何将参数传递给dotnet ef数据库更新?

我希望能够使用参数来更新不同的数据库。

我试过了

dotnet ef数据库更新“接受”

dotnet ef数据库更新接受

但这没用..

还是我该如何放置一个开关以从配置中获取不同的conenctionString?

public ProjectContext CreateDbContext(string[] args)
{
    IConfigurationRoot configuration = new ConfigurationBuilder()
        .SetBasePath(Directory.GetCurrentDirectory())
        .AddJsonFile("appsettings.json")
        .Build();

    // Find a way to get different connection string 
    var connectionString = configuration.GetConnectionString(args[0]);

    var builder = new DbContextOptionsBuilder<ProjectContext >();
    builder.UseSqlServer(connectionString);

    return new ProjectContext(builder.Options);
}
他的

在得到答案的几周后,.NET 5发布了。因此,这有可能改变。

现在回答

.NET 5和关联的EF Core 5+ NuGets支持此功能。在包管理器中,您可以输入:

Add-Migration YourMigrationName -Args "Space Separated Args"
Update-Database -Args "Space Separated Args"

例如,我使用此:

Update-Database -Args MyConnName

在我的启动项目中,我有一个具有该连接字符串键的配置文件(或appsettings.json),然后将其拉入。

请注意,我说过.NET Core5。从现在开始,它将在几周内发布完整版本。因此,在几周内这个答案可能很简单。但在此之前,您可能需要安装预览版(和NuGet PreReleases)

在此之前

有缺乏选择,当这个问题被问,虽然有选项,比如使用dotnet ef commandsAppArgs,如这里讨论但是这些已更改,并且现在也可以从PM控制台访问,如上面“现在”的答案中所述。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将表参数传递给 EF Core 中的 SQL Server 存储过程?

如何将运行时参数传递给EF Core谓词表达式

将Env Conn字符串插入与启动prj不同的类库中的带有EF Core DbContext的.NET Core 2.0中,并实现IDesignTimeDbContextFactory

.NET Core DI,将参数传递给构造函数的方法

将URL参数从Appsettings.json(.core)传递给React

在.NET Core 2.0中创建迁移步骤时,将“ IDesignTimeDbContextFactory <ServicesDbContext>”的实现添加到项目错误中

将参数传递给ASP.NET Core中的部分视图

将命令行参数传递给ASP Core中的Startup类

cassandra-driver-core:将列表值传递给参数化的SimpleStatement

仅使用输入按钮将参数传递给 ASP.NET Core 中的 Action 的 Post 表单

ASP.NET Core中间件将参数传递给控制器

将数组作为命令行参数传递给Asp.Net Core

将参数传递给ASP.NET Core中的jQuery加载函数

ASP.NET Core - 将 enum 参数从 razor View 传递给 formaction

如何将多个参数传递给.net Core 3.1上的存储过程

如何将 Version/PackageVersion 参数传递给 DotNet Core CLi

如何通过 Asp .Net Core 控制器将参数传递给视图组件

EF Core:通过将注入的 DbContext 对象作为参数传递来创建对象

如何将两个参数传递给 ASP.NET Core MVC 中的控制器?

如何将NULL参数传递给Entity Framework Core 2.1中的上下文查询类型

如何在 ASP.NET Core 中使用 jQuery 将数组作为列表传递给 action 参数

将参数传递给参数

如何利用传递给EntityFramework Core CLI的环境参数

EF Core 在类库中并从 API 项目中使用 - 如何将配置信息传递给类库?

将ILogger或ILoggerFactory传递给AspNet Core中的构造函数?

将.NET Core环境传递给React.JS应用

如何将POCO类传递给.NET Core配置

.NET Core DI将AddHttpContextAccessor的信息传递给服务

通过Entity Framework Core将列表传递给视图