Creación de funciones Lambda con C# - AWS Lambda

Creación de funciones Lambda con C#

En las siguientes secciones se explica cómo se aplican los conceptos fundamentales y los patrones de programación comunes al crear código de funciones de Lambda en C#.

AWS Lambda proporciona las siguientes bibliotecas de funciones de C#. Estos paquetes están disponibles como Nuget Packages.

Herramientas y bibliotecas para C#
  • Amazon.Lambda.Core: esta biblioteca proporciona un registrador de Lambda estático, interfaces serialización y un objeto context. El objeto Context (Objeto context de AWS Lambda en C#) proporciona información del tiempo de ejecución acerca de la función de Lambda.

  • Amazon.Lambda.Serialization.Json: es una implementación de la interfaz de serialización de Amazon.Lambda.Core.

  • Amazon.Lambda.Logging.AspNetCore : proporciona una biblioteca para el registro desde ASP.NET.

  • Objetos de evento (POCOs) para varios servicios de AWS, entre los que se incluyen:

    • Amazon.Lambda.APIGatewayEvents

    • Amazon.Lambda.CognitoEvents

    • Amazon.Lambda.ConfigEvents

    • Amazon.Lambda.DynamoDBEvents

    • Amazon.Lambda.KinesisEvents

    • Amazon.Lambda.S3Events

    • Amazon.Lambda.SQSEvents

    • Amazon.Lambda.SNSEvents

Lambda proporciona los siguientes tiempos de ejecución para lenguajes .NET:

.NET
Nombre Identifier Sistema operativo Arquitecturas Obsolescencia (Fase 1)

.NET 7 (solo contenedor)

dotnet7

Amazon Linux 2

x86_64, arm64

14 de mayo de 2024

.NET 6

dotnet6

Amazon Linux 2

x86_64, arm64

Para comenzar con el desarrollo de aplicaciones en su entorno local, implemente una de las aplicaciones de ejemplo disponibles en el repositorio de GitHub de esta guía.

Aplicaciones de muestra de Lambda en C#
  • blank-csharp: una función de C# que muestra el uso de las bibliotecas de .NET de Lambda, el registro, las variables de entorno, el seguimiento de AWS X-Ray, las pruebas de unidad y el SDK de AWS.

  • ec2-spot: una función que administra las solicitudes de instancia de spot en Amazon EC2.