Skip to content

Instantly share code, notes, and snippets.

@Antaris
Created December 11, 2015 13:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Antaris/bf5473cd31a28c90474b to your computer and use it in GitHub Desktop.
Save Antaris/bf5473cd31a28c90474b to your computer and use it in GitHub Desktop.
public class ConnectionStringProvider
{
private readonly IApplicationEnvironment _appEnv;
private readonly IConfiguration _config;
public ConnectionStringProvider(IApplicationEnvironment appEnv, IConfiguration config)
{
_appEnv = appEnv;
_config = config;
}
public string GetConnectionString(string name)
{
return UpdateConnectionString(_config[$"Data:{name}"]);
}
private string UpdateConnectionString(string connectionString)
{
return (connectionString || "").Replace("|DataDirectory|", Path.Combine(_appEnv.ApplicationBasePath, ".data" + Path.DirectorySeparatorChar));
}
}
{
"Data": {
"Default": "SERVER=(localdb)\\MSSQLLocalD;AttachDbFileName=|DataDirectory|Database.mdf;Integrated Security=true;MultipleActiveResultSets=true"
}
}
services
.AddEntityFramework()
.AddSqlServer()
.AddDbContext<MyDbContext>(b => b.UseSqlServer(provider.GetConnectionString("Default")));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment