[英][Azure Deployments]: Can we filter Azure Resource Group Deployments by name using c#?
我正在尝试使用名称以“Deploy”开头的过滤器获取 Azure 资源组部署,但在 $filter 上找不到任何文档。
我试图做如下的事情:
try
{
var credentials = new ClientSecretCredential(tenantId, clientId, clientSecret);
var resourceClient = new ResourcesManagementClient(subscriptionId, credentials);
var deployments = resourceClient.Deployments;
AsyncPageable<DeploymentExtended> rgDeployments = deployments.ListByResourceGroupAsync("myRG", "name eq 'Deploy-20210412184314'");
await foreach (DeploymentExtended deploymentProperties in rgDeployments)
{
Trace.WriteLine(deploymentProperties.Name);
}
}
catch(Exception e)
{
Trace.WriteLine(e.Message);
}
但它给出了错误说 -
{"error":{"code":"InvalidProvisioningStateFilter","message":"Invalid $filter 'name eq 'Deploy-20210412184314'' specified in the query string."}}
那么我们可以只使用像provisioningState eq '{state}'
这样的过滤器而不是名称吗?
请参阅本文档。
恐怕您不能使用name eq 'Deploy-20210412184314'
的过滤器,在这种情况下,如果您已经知道部署的名称并想在资源组 scope 中获取它,则无需使用ListByResourceGroupAsync
,只需使用这个方法DeploymentsOperations.GetAsync(String, String, CancellationToken)
,传入resourceGroupName
和deploymentName
,就可以简单的获取了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.