我使用此代码来获取 SQL Server 列表:
SqlDataSourceEnumerator instances = SqlDataSourceEnumerator.Instance;
System.Data.DataTable table = instances.GetDataSources();
问题是第二行需要一些时间,通常是几秒钟。
有没有更快的方法来获取 SQL Server 列表?
其中一些 SQL Server 未在本地安装,因此我无法仅在 Windows 注册表上进行中继。
项目采用.NET 8。
在我的例子中,可以定义不同的 SQL 服务器组。
#1本地安装在我的电脑上
#2本地安装在其他桌面上
#3 Windows 服务器上的 SQL 服务器
我不需要见第二组。
组 #3 是一个稳定组,可以进行硬编码。
而不是
SqlDataSourceEnumerator
,我只是检测本地 SQL 服务器并手动添加来自组 #3 的服务器。
如果组 #1 和 #3 中的所有服务器都可用,则检测时间将从约 17 秒缩短到 1 以下。