我正在使用框架4.0和SQL Server 2008 R2的C#。 我列出了SQL Server 2008中使用此代碼:獲取數據庫列表取決於所選的服務器
public static string[] GetSQLServerList()
{
SqlDataSourceEnumerator dse = SqlDataSourceEnumerator.Instance;
DataTable dt = dse.GetDataSources();
if (dt.Rows.Count == 0)
{
return null;
}
string[] SQLServers = new string[dt.Rows.Count];
int f = -1;
foreach (DataRow r in dt.Rows)
{
string SQLServer = r["ServerName"].ToString();
string Instance = r["InstanceName"].ToString();
if (Instance != null && !string.IsNullOrEmpty(Instance))
{
SQLServer += "\\" + Instance;
}
SQLServers[System.Math.Max(System.Threading.Interlocked.Increment(ref f), f - 1)] = SQLServer;
}
Array.Sort(SQLServers);
return SQLServers;
}
我上市的ComboBox我的服務器。
如何列出數據庫,取決於我在ComboBox中選擇的服務器?
我發現這個tutorial,但它需要sqlconnection
,我沒有選擇服務器時該如何連接?
什麼SQLServers之間'的區別:
從選定的服務器獲取數據庫列表[System.Math.Max(System.Threading.Interlocked.Increment(ref f),f - 1)] = SQLServer;' 和 'sqlServers [++ f] = sqlServer; ' 在這個方法中? –