Sql server nfig数据库是一个选项。如果位置联网,则中央配置数据库是一个选项。 var connectionString = Environment.GetEnvironmentVariable("MY_APP_CONNECTION_STRING"); var db
Sql server nfig数据库是一个选项。如果位置联网,则中央配置数据库是一个选项。 var connectionString = Environment.GetEnvironmentVariable("MY_APP_CONNECTION_STRING"); var db,sql-server,vb.net,windows,Sql Server,Vb.net,Windows,nfig数据库是一个选项。如果位置联网,则中央配置数据库是一个选项。 var connectionString = Environment.GetEnvironmentVariable("MY_APP_CONNECTION_STRING"); var dbContext = new DbContext(connectionString); private SqlConnectionStringBuilder _connString = new SqlConnectionStringBu
nfig数据库是一个选项。如果位置联网,则中央配置数据库是一个选项。
var connectionString = Environment.GetEnvironmentVariable("MY_APP_CONNECTION_STRING");
var dbContext = new DbContext(connectionString);
private SqlConnectionStringBuilder _connString = new SqlConnectionStringBuilder();
private void RefreshConnectionString()
{
_connString.ApplicationName = AppDomain.CurrentDomain.ApplicationIdentity.FullName;
_connString.ApplicationIntent = ApplicationIntent.ReadWrite;
_connString.DataSource = GetSqlDatasources().FirstOrDefault();
_connString.InitialCatalog = GetSqlDatabases().FirstOrDefault();
_connString.AsynchronousProcessing = true;
_connString.ConnectTimeout = 5;
_connString.IntegratedSecurity = true;
_connString.Pooling = true;
}
private IEnumerable<string> GetSqlDatabases()
{
using (var conn = new SqlConnection(_connString.ConnectionString))
{
using (var cmd = new SqlCommand(@"SELECT [name] FROM sys.databases WHERE [name] NOT IN ('master', 'model', 'msdb', 'tempdb')", conn))
{
var dbnames = new List<string>();
try
{
conn.Open();
var reader = cmd.ExecuteReader();
while (reader.Read()) dbnames.Add(reader.GetString(0));
}
catch {}
return dbnames;
}
}
}
private IEnumerable<string> GetSqlDatasources()
{
var sqlEnum = SqlDataSourceEnumerator.Instance;
return sqlEnum.GetDataSources().Rows.OfType<DataRow>().Select(row => row[0].ToString());
}