官方的做法是这样的:
using System.Data.Sql;
class Program
{
static void Main()
{
// Retrieve the enumerator instance and then the data.
SqlDataSourceEnumerator instance =
SqlDataSourceEnumerator.Instance;
System.Data.DataTable table = instance.GetDataSources();
// Display the contents of the table.
DisplayData(table);
Console.WriteLine("Press any key to continue.");
Console.ReadKey();
}
private static void DisplayData(System.Data.DataTable table)
foreach (System.Data.DataRow row in table.Rows)
{
foreach (System.Data.DataColumn col in table.Columns)
{
Console.WriteLine("{0} = {1}", col.ColumnName, row[col]);
}
Console.WriteLine("============================");
}
}
请看遇到的问题及解决方法:
实际上问题就是,得到的结果只有服务器名字,但由于是默认实例,所以并没有实例名字。而且,假如安装的是sqlserver,则连接数据库是必须是 服务器\sqlexpress(默认实例名称);假如安装的是完整版的sqlexpress,则只需 服务器 即可连接。这就造成了不少问题。 上边百度给出比较好的解决方法。
本文转自 huohe2009 51CTO博客,原文链接:http://blog.51cto.com/zhaojie/932275