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

Azure部署指定项目疑问:如何选择解决方案中的项目部署到对应槽/应用

如何指定Azure部署对应槽/应用的解决方案项目

我之前帮不少开发者解决过这类多项目解决方案的Azure部署问题,设置默认启动项目确实没用——Azure的部署工具默认会尝试部署整个解决方案,或者自动选第一个项目,所以得用下面几个方法来精准控制:

方法1:为每个项目单独创建发布配置文件

这是最直观的方式,让每个项目对应自己的Azure槽/应用:

  • 右键你的MVC前端项目 → 选择「发布」
  • 在发布向导里选择Azure App Service,指定你要部署到的目标槽/应用,完成配置后保存这个发布配置文件(.pubxml)
  • 对WebAPI项目重复同样的操作,选择另一个槽/应用
  • 后续部署时,直接选择对应项目的发布配置即可,不管是手动发布还是CI/CD流程里引用这个配置

方法2:在CI/CD流程中指定具体项目路径

如果用Azure Deployment Center(原Deployment Options)或者GitHub Actions/Azure DevOps:

  • 在Deployment Center的配置页面,找到「项目路径」(Project path)选项,输入要部署的项目相对路径,比如./YourMvcFrontend或者./YourWebApi,这样部署工具只会处理这个路径下的项目
  • 如果用YAML配置的CI/CD(比如GitHub Actions),在dotnet publish步骤里指定具体的csproj文件路径:
    - name: Publish MVC Project
      run: dotnet publish ./YourMvcProject/YourMvcProject.csproj -c Release -o ./publish/mvc
    - name: Deploy to MVC Slot
      uses: azure/webapps-deploy@v2
      with:
        app-name: your-mvc-app
        slot-name: staging
        package: ./publish/mvc
    
    - name: Publish API Project
      run: dotnet publish ./YourApiProject/YourApiProject.csproj -c Release -o ./publish/api
    - name: Deploy to API Slot
      uses: azure/webapps-deploy@v2
      with:
        app-name: your-api-app
        slot-name: production
        package: ./publish/api
    

方法3:调整解决方案的部署属性

你可以在解决方案层面临时控制哪些项目参与部署:

  • 在Visual Studio里右键解决方案 → 选择「属性」
  • 切换到「配置属性」→「部署」选项卡
  • 取消勾选不需要部署的项目,只保留当前要部署的项目(不过这个方法适合单次临时部署,长期管理还是推荐前两种方案)

这些配置都是在解决方案或项目层面完成的,核心思路就是让部署工具明确知道要处理哪个项目,而不是默认遍历整个解决方案。

内容的提问来源于stack exchange,提问作者Leonardo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 11:22:13