Database:必须存放在C:\Users\{user}目录下aaa.mdf;
AttachDBFilename:D:\Dev\App\App_Data\aaa.mdf(自由存放)
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;AttachDBFilename=%DataDirectory%\\aaa.mdf;Trusted_Connection=True;ConnectRetryCount=1",
startup 里设置环境变量,ConfigureServices 里替换环境变量:
public Startup(IConfiguration configuration, IWebHostEnvironment env){
Configuration = configuration;
string appRoot = env.ContentRootPath;
Environment.SetEnvironmentVariable("DataDirectory", Path.Combine(appRoot, "App_Data"));
}
public void ConfigureServices(IServiceCollection services){
var ss = Environment.ExpandEnvironmentVariables(Configuration.GetConnectionString("DefaultConnection"));
services.AddDbContext<AppDbContext>(opts => opts.UseSqlServer(ss), sqldbBuilder =>{
sqldbBuilder.CommandTimeout(500);
sqldbBuilder.MigrationsAssembly("NetCoreTemp.WebApi");
}));
}