【问题标题】:EF Core Seeding Data Depending on Database NameEF Core 播种数据取决于数据库名称
【发布时间】:2021-01-21 07:49:27
【问题描述】:

作为迁移的一部分,我需要使用数据预填充 SQL Server 表,其中一个字段应取决于目标数据库名称或服务器名称 .至少开发和生产环境不应该是一样的。

我在OnModelCreating 中使用modelBuilder.Entity<T>().HasData(...) 编写了一个代码,但我仍然不知道如何在此处获取目标数据库名称。

【问题讨论】:

  • 这是存储冗余,如果可能,应始终避免。该值可以在运行时获取。考虑如果数据库迁移到另一台服务器,甚至重命名会发生什么。

标签: c# entity-framework-core entity-framework-migrations


【解决方案1】:

我认为您可以从连接字符串中获取数据库名称。 将此代码放入 Seed 方法中:

var connection = context.Database.Connection.ConnectionString;

或类似的东西,提供连接字符串,然后从该对象获取数据库名称。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-17
    • 1970-01-01
    • 1970-01-01
    • 2020-08-27
    • 1970-01-01
    • 2020-10-20
    • 2020-12-13
    • 1970-01-01
    相关资源
    最近更新 更多