Kien vous aide à créer
un package de déploiement Lambda
pour C# .NET

J'ai créé une fonction AWS Lambda dans C#, mais je reçois une erreur lors de l'appel. Comment puis-je créer mon package de déploiement C# de manière à ne pas recevoir d'erreur ? Quelles sont mes options ?

« module not found », « module cannot be loaded » ou « cannot find class » sont des erreurs courantes pour les fonctions Lambda dans C#. Ces erreurs peuvent être causées par le fait que votre package de déploiement n'a pas la structure de dossiers requise pour que le service Lambda charge vos modules et bibliothèques.  

Créez un package de déploiement avec la structure de dossiers correcte.

Il existe deux méthodes principales pour créer et déployer un package de déploiement C# pour Lambda : l'interface de ligne de commande (CLI) .NET Core avec le plug-in Amazon.Lambda.Tools ou AWS Toolkit for Visual Studio. Pour plus d'informations, consultez Package de déploiement AWS Lambda dans C#.

Créer et déployer le package à l'aide de l'interface de ligne de commande .NET Core

1.    Pour installer les modèles .NET Lambda par défaut, puis ajouter le plug-in Amazon.Lambda.Tools à l'interface de ligne de commande .NET Core, exécutez la commande suivante :

dotnet new -i 'Amazon.Lambda.Templates::*'

2.    Effectuez l'une des actions suivantes :

Pour créer une nouvelle fonction Lambda en utilisant l'un des modèles que vous avez installés, exécutez la commande suivante :

dotnet new lambda.EmptyFunction --name {function-name} --profile default --region {aws-region}

Par exemple :

dotnet new lambda.EmptyFunction --name myFunction --profile default --region us-east-1

Pour ajouter Amazon.Lambda.Tools à un projet existant, ajoutez manuellement le groupe d'éléments suivant au fichier .csproj 2017 de votre projet :

<ItemGroup>
<DotNetCliToolReference Include="Amazon.Lambda.Tools" Version="{current-version}"></DotNetCliToolReference>
</ItemGroup>

Remarque : Vérifiez la version actuelle (par exemple, « 3.1.1 ») d'Amazon.Lambda.Tools sur le site Web NuGet.

3.    Pour télécharger toutes les dépendances, exécutez la commande suivante :

cd {your-function-directory}
dotnet restore

Par exemple :

cd myFunction\src\myFunction
dotnet restore

Remarque : Si vous recevez une erreur de non compatibilité, vérifiez que vous avez installé une version de .NET Core compatible avec les outils Lambda et que vous l'utilisez dans l'interface de ligne de commande. Pour télécharger des versions antérieures de .NET Core, consultez le site Web .NET Download Archives.

4.    Pour créer le package de déploiement, exécutez la commande suivante :

dotnet lambda deploy-function

5.    Lorsque vous y êtes invité dans l'interface de ligne de commande, entrez un nom de fonction et sélectionnez un rôle IAM. Votre fonction Lambda est créée.

Créer et déployer le package à l'aide d'AWS Toolkit for Visual Studio

1.    Téléchargez et installez AWS Toolkit for Visual Studio.

2.    Créez et générez un projet AWS Lambda Project (.NET Core). Pour plus d'informations, consultez Didacticiel : Utilisation des modèles AWS Lambda dans AWS Toolkit for Visual Studio et Création et développement d'un projet.

Vérifier la signature du gestionnaire de fonctions

La signature du gestionnaire fournie lors de la création de votre fonction Lambda doit être au format suivant :

ASSEMBLY::TYPE::METHOD

Par exemple :

myFunction::myFunction.Function::FunctionHandler

Pour confirmer que la fonction est formatée correctement, vous pouvez vérifier les fichiers dans le répertoire src/{nom_fonction} de votre fonction. Pour plus d'informations, consultez Interface de ligne de commande .NET Core et Signatures de gestionnaire.


Cette page vous a-t-elle été utile ? Oui | Non

Retour au Centre de connaissances AWS Support

Vous avez besoin d'aide ? Consultez le site du Centre AWS Support

Date de publication : 27/12/2018