0

Windows アプリケーションで以下のコードを使用してローカル サーバーを取得しています。SQL Server 2012 を使用していたときはエラーなく動作していましたが、SQL Server 2016 をダウンロードしたときに例外が発生しました。

例外: サービスの管理中に SMO で例外が発生しました。内部例外: この要求のデータを取得できませんでした。

コード:

public List<string> findLocalServers()
{
    var servers = new List<string>();
    try
    {
        var serverCollection = new ManagedComputer().ServerInstances.Cast<ServerInstance>().Select(instance => String.IsNullOrEmpty(instance.Name) ?
                                        instance.Parent.Name : instance.Parent.Name)
                                    .ToArray();

        foreach (var server in serverCollection.Where(server => !servers.Contains(server)))
        {
            servers.Add(server);
        }

        return servers;
    }
    catch (Exception ex)
    {            
        return null;
    }
}
4

1 に答える 1