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

如何在Visual Studio 2017中为Azure资源组项目添加Function App?

简便添加Function App到VS2017 Azure资源组项目的方法

我完全理解你的困扰——门户生成的自动化脚本确实冗余,里面塞满了各种默认配置和非必需依赖,梳理起来太费时间。下面是几个更高效的方法,帮你快速在VS2017的Azure资源组项目中添加Function App资源:

方法1:手动添加精简版ARM模板片段

VS2017的Azure资源组项目默认没有直接的Function App模板选项,但你可以手动添加只保留核心配置的ARM模板代码:

  • 先在资源组项目里添加一个存储账户(Function App必须依赖它),右键项目→添加→新资源,搜索“存储账户”就能快速创建。
  • 新建一个JSON文件(比如命名为functionapp-resource.json),粘贴以下简化模板,记得替换掉占位符(比如<your-function-app-name>、<your-storage-account-name>):
{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "resources": [
    {
      "type": "Microsoft.Web/sites",
      "apiVersion": "2022-03-01",
      "name": "<your-function-app-name>",
      "location": "[resourceGroup().location]",
      "kind": "functionapp",
      "properties": {
        "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', '<your-app-service-plan-name>')]",
        "siteConfig": {
          "appSettings": [
            {
              "name": "AzureWebJobsStorage",
              "value": "[concat('DefaultEndpointsProtocol=https;AccountName=', '<your-storage-account-name>', ';AccountKey=', listKeys(resourceId('Microsoft.Storage/storageAccounts', '<your-storage-account-name>'), '2021-04-01').keys[0].value)]"
            },
            {
              "name": "FUNCTIONS_EXTENSION_VERSION",
              "value": "~4"
            },
            {
              "name": "FUNCTIONS_WORKER_RUNTIME",
              "value": "powershell" // 可根据需求修改为dotnet、python等
            }
          ]
        }
      },
      "dependsOn": [
        "[resourceId('Microsoft.Web/serverfarms', '<your-app-service-plan-name>')]",
        "[resourceId('Microsoft.Storage/storageAccounts', '<your-storage-account-name>')]"
      ]
    }
  ]
}
  • 把这个JSON文件纳入资源组项目,部署时VS会自动合并所有模板资源。

方法2:用Azure CLI生成简化模板

如果你熟悉Azure CLI,能快速生成仅包含核心配置的Function App模板:

  1. 打开命令提示符,先登录Azure:az login
  2. 运行以下命令生成模板(替换参数值,临时资源组后续可以删除):
az functionapp create --name <your-function-app-name> --resource-group <temp-rg-name> --consumption-plan-location <region> --runtime powershell --storage-account <temp-storage-name> --generate-template > functionapp-template.json
  1. 打开生成的functionapp-template.json,删掉冗余的tags、非必需的应用设置,再把精简后的内容复制到VS资源组项目中。

方法3:从独立Function项目导出模板

如果你已经有现成的Azure Function项目,可以通过以下步骤导出适配资源组项目的模板:

  1. 在VS2017中创建一个独立的Azure Function App项目,配置好运行时、存储账户等基础设置。
  2. 右键项目→发布,选择Azure目标完成一次部署(可以部署到临时资源组)。
  3. 登录Azure门户,找到这个已部署的Function App,进入「自动化」→「导出模板」。
  4. 在导出页面,取消勾选「包括参数」和「包括所有资源」,只选择Function App、存储账户和应用服务计划,然后下载模板。
  5. 把下载的模板文件导入到你的Azure资源组项目,调整参数和依赖关系即可。

这些方法都能帮你避开门户生成的复杂脚本,快速在VS2017的资源组项目中添加Function App,同时保留你需要的核心配置,方便后续用PowerShell部署。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 10:05:08