如何在 EF Core 中使用自定义 HistoryRepository?
How to use custom HistoryRepository in EF Core?
我想知道在数据库迁移期间注入 IHistoryRepository
自定义实现的最佳方法是什么。
这个会吗
OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.ReplaceService<IHistoryRepository, MyRepository>();
}
使用 ASP.NET Core 还是我应该做其他事情?
收到了 Brice Lambson 的回邮件
如果您只想更改名称(或模式),有一种简单的方法可以做到:
optionsBuilder.UseSqlServer(
"MyConnectionString",
x => x.MigrationsHistoryTable("MyHistoryTable", "mySchema"));
要替换 EF Core 1.1 中的 IHistoryRepository 服务,这里有一些代码。
optionsBuilder
.UseSqlServer("MyConnectionString")
.ReplaceService<SqlServerHistoryRepository, MyHistoryRepository>();
您替换提供者特定类型的原因是因为 IHistoryRepository 是使用 DatabaseProviderServices 和朋友为每个提供者解析的。有关相关代码行,请参阅 SqlServerDatabaseProviderServices。
我想知道在数据库迁移期间注入 IHistoryRepository
自定义实现的最佳方法是什么。
这个会吗
OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.ReplaceService<IHistoryRepository, MyRepository>();
}
使用 ASP.NET Core 还是我应该做其他事情?
收到了 Brice Lambson 的回邮件
如果您只想更改名称(或模式),有一种简单的方法可以做到:
optionsBuilder.UseSqlServer(
"MyConnectionString",
x => x.MigrationsHistoryTable("MyHistoryTable", "mySchema"));
要替换 EF Core 1.1 中的 IHistoryRepository 服务,这里有一些代码。
optionsBuilder
.UseSqlServer("MyConnectionString")
.ReplaceService<SqlServerHistoryRepository, MyHistoryRepository>();
您替换提供者特定类型的原因是因为 IHistoryRepository 是使用 DatabaseProviderServices 和朋友为每个提供者解析的。有关相关代码行,请参阅 SqlServerDatabaseProviderServices。