AWS Lambda
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS Toolkit for Visual Studio

您可以使用 AWS Toolkit for Visual Studio 的 Lambda 插件构建基于 .NET 的 Lambda 应用程序。该插件作为 Nuget 程序包的一部分提供。

步骤 1:创建并构建项目

  1. 启动 Microsoft Visual Studio 并选择新建项目

    1. File 菜单中,选择 New,然后选择 Project

    2. 新建项目窗口中,选择 AWS Lambda 项目(.NET Core),然后选择确定

    3. 选择蓝图窗口中,系统会显示从示例应用程序列表中进行选择的选项,而这些示例应用程序将为您提供相应示例代码,方便您开始着手创建基于 .NET 的 Lambda 应用程序。

    4. 要从头创建 Lambda 应用程序,请选择 Blank Function (空白函数),然后选择 Finish (完成)

  2. 检查 aws-lambda-tools-defaults.json 文件,该文件作为项目的一部分创建。您可以在此文件中设置选项,默认情况下由 Lambda 工具读取这些选项。在 Visual Studio 中创建的项目模板使用默认值设置多个此类字段。请注意以下字段:

    • profile:您执行 Lambda 函数时所需的 IAM 角色。如果您尚未创建执行角色,请执行以下操作:

      1. 登录 AWS 管理控制台 并通过以下网址打开 IAM 控制台 https://console.amazonaws.cn/iam/

      2. 按照 IAM 用户指南创建角色以向 AWS 服务委派权限的步骤创建 IAM 角色(执行角色)。遵循步骤创建角色时,请注意以下事项:

        • Role Name 中,使用在 AWS 账户内唯一的名称。

        • Select Role Type 中,选择 AWS Service Roles,然后选择授予该服务权限以担任此角色的服务角色。

        • Attach Policy (附加策略) 中,选择适合执行您的 Lambda 函数的权限策略。

    • function-handler:这是指定函数 function handler 的位置,也就是您无需在向导中设置它的原因。但是,每当您在函数代码中重命名 AssemblyNamespaceClassFunction 时,您都需要在 aws-lambda-tools-defaults.json file 中更新相应字段。

      { "profile":"iam-execution-profile"", "region" : "region", "configuration" : "Release", "framework" : "netcoreapp2.1", "function-runtime":"dotnetcore2.1", "function-memory-size" : 256, "function-timeout" : 30, "function-handler" : "Assembly::Namespace.Class::Function" }
  3. 打开 Function.cs 文件。系统会为您提供一个实施 Lambda 函数处理程序代码的模板。

  4. 如果您已编写表示您 Lambda 函数的代码,则可以通过以下方式上传该代码:右键单击您的应用程序中的 Project (项目) 节点,然后选择 Publish to AWS Lambda (发布至 AWS Lambda)

  5. Upload Lambda Function 窗口中,键入函数的名称或选择之前发布的函数以重新发布。然后选择下一个

  6. 高级函数详细信息窗口中,执行以下操作:

    • 指定 Role Name:,前面所述的 IAM 角色。

    • (可选)在环境:中指定您要使用的任意环境变量。有关更多信息,请参阅AWS Lambda 环境变量

    • (可选)指定内存 (MB):超时(秒): 配置。

    • (可选)如果您的 Lambda 函数需要访问在 VPC 内部运行的资源,请指定 VPC: 配置。有关更多信息,请参阅配置 Lambda 函数以访问 Amazon VPC 中的资源

    • 选择下一个,然后选择上载,即可部署您的应用程序。

有关更多信息,请参阅使用 .NET Core CLI 部署 AWS Lambda 项目