azure.ContainerGroups.ListByResourceGroup抛出资源未找到异常

问题描述 投票:0回答:1

使用Microsoft.Azure.Management.ResourceManager.Fluent库枚举资源组中的容器时:

azure.ContainerGroups.ListByResourceGroup(resouceGroup)

返回一个enumator,但在enumator上执行任何操作(例如.ToList())将抛出:

Exception thrown: 'Microsoft.Rest.Azure.CloudException' in System.Private.CoreLib.dll The Resource 'Microsoft.ContainerInstance/containerGroups/myResource' under resource group 'myResourceGroup' was not found.

azure-resource-manager azure-container-instances
1个回答
1
投票

我通过重建枚举器解决了它,因为它引发了MoveNext()操作。但是,枚举器迭代器仍在增加,有效地跳过了丢失的资源。

    private static List<IContainerGroup> getContainerInstances(IAzure azure, string resouceGroup)
    {
        var brokenEnumerator = azure.ContainerGroups.ListByResourceGroup(resouceGroup).GetEnumerator();
        var containerInstances = new List<IContainerGroup>();

        while (true)
        {
            try
            {
                if (!brokenEnumerator.MoveNext())
                {
                    break;
                }
                containerInstances.Add(brokenEnumerator.Current);
            }
            catch (CloudException)
            {
                // noop
            }
        }

        return containerInstances;
    }
© www.soinside.com 2019 - 2024. All rights reserved.