PDA

View Full Version : سوال: لیست کردن نام sqlserver های نصب شده



titan_net
چهارشنبه 06 مرداد 1395, 19:08 عصر
سلام به همه دوستان و برنامه نویسان عزیز

میخواستم بدونم چطور میتونم در کمبوباکس نام سروهای اس کیو ال نصب شده را نمایش بدم و در کمبوباکس دیگه لیست دیتابیس های موجود در اون سرور اس کیو ال را نمایش بدم

ممون میشم راهنمایی کنید

c0mmander
چهارشنبه 06 مرداد 1395, 20:26 عصر
برای گرفتن نام سرور:
SqlDataSourceEnumerator.Instance.GetDataSources()
که خروجی این یک DataTable هست.
و برای گرفتن دیتا بیس های بعد از اتصال به سرور :
sqlConn.GetSchema("Databases");
که خروجی این هم یک DataTable هست.

لینک مفید:
http://stackoverflow.com/questions/13686433/get-list-of-database-depends-on-chosen-server

titan_net
پنج شنبه 07 مرداد 1395, 10:00 صبح
دوستان بیشار راهنمایی کنید به نتیجه نرسیدم

c0mmander
پنج شنبه 07 مرداد 1395, 19:26 عصر
دوستان بیشار راهنمایی کنید به نتیجه نرسیدم

تقریبا همه کاری که باید انجام بشه کدش داخل لینکی که قرار دادم هست. تنها کاری که شما باید انجام بدید یک add کردن اون رشته به comboBox هست.

به عنوان مثال:


List<String> ServerNames = new List<String>();

SqlDataSourceEnumerator servers = SqlDataSourceEnumerator.Instance;
DataTable serversTable = servers.GetDataSources();

foreach (DataRow row in serversTable.Rows) {
string serverName = row[0].ToString();

try {

if (row[1].ToString() != "") {

serverName += "\\" + row[1].ToString();
// اضافه کردن به کمبوباکس
comboBox1.Items.Add(servItem);
}


}
catch {


}

// یا به صورت زیر در بلوک دیگری بشرط سراسری بود ServerNames

ServerNames.Add(serverName);
}foreach (string servItem in ServerNames)
{
comboBox1.Items.Add(servItem);
}