Netscaler Nitro API 无法获取服务组

Netscaler Nitro API cannot get Service Groups

我正在尝试使用 .NET API 禁用我的 Netscaler 中的服务器。我能够获得 VIP 列表并获得与这些 VIP 关联的服务器列表。但是,某些 VIP 具有与之关联的服务组。这就是我 运行 遇到问题的地方。当我到达具有服务组的 VIP 时,我收到空异常错误。我不确定服务组信息存储在 VIP 中的什么位置。这是我的代码:

nitro_service session = new nitro_service("<netscaler-IP>");
session.login("<username>", "<password>");

var lbServers = lbvserver.get(session);

foreach (var vip in lbServers)
{
    foreach (var service in lbvserver_servicegroup_binding.get(session, vip.name))
    {
        Console.WriteLine(vip.name);
        Console.Write(service.servicegroupname);
        Console.WriteLine(service.servicename);
        Console.ReadLine();
    }
}

我已尝试检查 servicegroupname 是否为空,但它始终为空,无论是否存在与 VIP 关联的服务组或服务器。

我也试过在没有 VIP 的情况下只获取服务组,但 lbvserver_servicegroup_binding 只需要 2 个参数。

我想通了。

我在 foreach 之前定义了我的服务组。

var serviceGroups = lbvserver_servicegroup_binding.get(session, vip.name);

然后添加了一个if serviceGroups !=null