0
 DataTable dataTable = SmoApplication.EnumAvailableSqlServers(false);
 comboBox1.ValueMember = "Name";
 comboBox1.DataSource = dataTable;

上記のコードを使用して、会社のネットワークで利用可能な SQL Server のリストをコンボボックス コントロールに入力しようとしていますが、以下のエラーが発生します。

このリクエストのデータを取得できませんでした

コードは開発マシンでは機能しますが、SQL Server 2012 共有管理オブジェクトがインストールされているクライアント PC では失敗します。

4

1 に答える 1

0

列挙は、ターゲット上で有効になっているSQL Server Browser サービス(既定では無効になっている) の影響を受け、オンサイト固有のサブネット UDP ブロードキャスト制限の影響を受けます。つまり、非常に信頼性が低いです。SQL Server のインストールを検出する場合は、管理者にサーバーのリストを提供してもらうか、WMIと AD データベースを使用する必要があります。

于 2013-05-16T14:49:04.283 に答える