You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET Aspire配置AsExisting仍创建新AppServicePlan的问题排查

解决.NET Aspire复用现有Azure App Service Plan的问题

问题根源

你遇到的核心问题是包版本不兼容和配置方式错误:

  • Aspire.Hosting.AppHost使用稳定版13.0.2,但Aspire.Hosting.Azure.AppService使用预览版13.0.2-preview.1.25603.5,版本不匹配会导致.AsExisting()逻辑失效。
  • 使用AddAzureAppServiceEnvironment是创建整套App Service环境(含自动生成计划),而非直接引用现有计划。

正确配置步骤

1. 统一NuGet包版本

确保所有Aspire相关包版本一致,将预览版Azure包替换为对应稳定版:

<ItemGroup>
  <PackageReference Include="Aspire.Hosting.AppHost" Version="13.0.2" />
  <PackageReference Include="Aspire.Hosting.Azure.AppService" Version="13.0.2" />
</ItemGroup>

2. 修改AppHost.cs配置

直接添加现有App Service Plan,再让应用关联该计划:

// 定义现有计划的必填参数
var planNameParam = builder.AddParameter("EXISTINGAPPSERVICEPLANNAME", isRequired: true);
var planRgParam = builder.AddParameter("EXISTINGAPPSERVICEPLANRESOURCEGROUPNAME", isRequired: true);

// 引用现有App Service Plan
var existingAppServicePlan = builder.AddAzureAppServicePlan("shared-plan")
    .AsExisting(planNameParam, planRgParam);

// 部署应用时指定使用现有计划
builder.AddProject<Projects.YourAppName>("your-app")
    .WithAzureAppService()
    .WithAppServicePlan(existingAppServicePlan); // 关联共享计划

3. 验证参数传递

确保DevOps管道中的环境变量正确传递,azd会自动读取这些参数用于资源引用:

- task: AzureCLI@2
  displayName: Provision Infrastructure
  inputs:
    azureSubscription: azconnection
    scriptType: bash
    scriptLocation: inlineScript
    keepAzSessionActive: true
    inlineScript: |
      azd provision --no-prompt
  env:
    AZURE_SUBSCRIPTION_ID: $(AZURE_SUBSCRIPTION_ID)
    AZURE_ENV_NAME: $(AZURE_ENV_NAME)
    AZURE_LOCATION: $(AZURE_LOCATION)
    EXISTINGAPPSERVICEPLANNAME: '$(EXISTING_APPSERVICEPLAN_NAME)'
    EXISTINGAPPSERVICEPLANRESOURCEGROUPNAME: '$(EXISTING_APPSERVICEPLAN_RESOURCEGROUPNAME)'

4. 验证Bicep生成

执行azd infra gen后,检查生成的Bicep代码:

  • 不应再出现Microsoft.Web/serverfarms资源定义
  • 应用的App Service资源会通过serverFarmId引用现有计划

额外注意事项

  • 确保azd使用的服务主体拥有现有App Service Plan所在资源组的读取权限
  • 如果现有计划与应用部署在不同资源组,需确认跨资源组引用的权限配置

内容的提问来源于stack exchange,提问作者Davey van Tilburg

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 22:13:16