【发布时间】:2018-07-01 12:21:15
【问题描述】:
我想在本地计算机上使用 mysql,在生产服务器上使用 SQL Server。
这是我在Startup.cs 中尝试做的事情:
我有两种方法:
public void ConfigureServices(IServiceCollection services)
{
}
和
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
}
不幸的是,我必须在ConfigureServices 方法中加入这一行:
services.AddDbContext<DbContext>(options => options.UseMySQL("..."));
或
services.AddDbContext<pluginwebContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
但是ConfigureServices 没有提供 env 参数,所以我无法测试:
if (env.IsDevelopment())
【问题讨论】:
-
将
env设置为类中的一个字段,以便您访问它。可以在构造函数中设置 -
您应该在本地和生产环境中使用相同的数据库供应商。否则基本行不通。您可以使用免费的SQL Server Express 或内置的LocalDB
标签: c# mysql sql-server entity-framework-core asp.net-core-2.0