AWS Extensions for .NET APIs Libraries and Frameworks

NET Configuration and Dependency Injection (DI) Extension for AWS SDK for .NET.

.NET Logging extensions for AWS integrate .NET logging frameworks with Amazon CloudWatch Logs to write log data to a configured log group. The logs can be viewed and searched using the AWS CloudWatch Console. Supports NLog, Apache log4net, ILogger, and Serilog.

.NET Configuration Extension for AWS Systems Manager (AWS SSM) simplifies using AWS SSM Parameter Store and AWS SSM AppConfig as a source for configuration information for .NET Core applications.

ASP.NET Core Data Protection Provider implementation for AWS Systems Manager allows you to use AWS SSM's Parameter Store to store keys generated by ASP.NET's Data Protection API. This enables you to scale by allowing multiple web servers to share the keys.

ASP.NET Core Identity Provider implementation for Amazon Cognito simplifies using Amazon Cognito as a membership storage solution for building ASP.NET Core web applications using ASP.NET Core Identity.

AWS IDE Toolkits

The AWS Toolkit for Visual Studio 2022 is an extension for Microsoft Visual Studio 2022 on Microsoft Windows. The toolkit makes it easier for developers to develop, debug, and deploy .NET and .NET Core applications using Amazon Web Services.
The AWS Toolkit for 2019 is an extension for Microsoft Visual Studio 2017 and 2019 on Microsoft Windows. The toolkit makes it easier for developers to develop, debug, and deploy .NET and .NET Core applications using Amazon Web Services.

The AWS Toolkit for JetBrains works with Rider and adds support for working with AWS services such as AWS Lambda and S3.

The AWS Toolkit for Visual Studio Code is a VS Code extension that lets you work with AWS services such as AWS Lambda.

Tasks for Amazon S3, AWS Elastic Beanstalk, AWS CodeDeploy, AWS Lambda and AWS CloudFormation and more, and running commands in the AWS Tools for Windows PowerShell module and the AWS CLI.

AWS .NET Tools and Libraries for AWS Lambda

These are AWS libraries, blueprints, and tools to support development and deployment of AWS Lambda functions.

Libraries & Blueprints

Amazon.Lambda.*Events contain classes that can be used as input types for Lambda functions that process various AWS events.
The AWS .NET Lambda Annotations for .NET is a new programming model for writing .NET Lambda functions. It allows for idiomatic .NET coding patterns and uses C# source generator technology to bridge the gap between the Lambda programming model to the more idiomatic programming model.
This library makes it easy to run ASP.NET Core Web API applications as a Lambda function with API Gateway or an ELB Application Load Balancer. It allows .NET Core developers to create "serverless" applications using the ASP.NET Core Web API framework and writes CloudWatch Log events by automatically forwarding the log messages to Lambda’s logging API.
This library integrates the .NET logging framework with the Lambda logging API. It allows applications to use the standard .NET logging functionality to write CloudWatch Log events by forwarding the messages from the .NET ILogger API to Lambda’s logging API.
AWS Lambda Blueprints are used for setting up new .NET Core projects for AWS Lambda. They are defined in a generic form so that they can be exposed through Visual Studio or the dotnet CLI with the command dotnet new.
dotnet new -i Amazon.Lambda.Templates::*

Tools & Container Images

This tool extension deploys AWS Lambda .NET Core projects  directly to the AWS Lambda service or through AWS CloudFormation after building and packaging up the project.
dotnet tool install -g Amazon.Lambda.Tools
The AWS Lambda Tools for Powershell can be used to create and deploy AWS Lambda functions written in PowerShell.
The AWS .NET Mock Lambda Tool for .NET is a testing tool that can be used to load a .NET Core Lambda project and execute the selected code inside an emulated Lambda environment. An IDE that is attached to the process hosting this tool can then debug and step through the .NET Core Lambda code. The tool is optimized for quick local debugging with minimal dependencies. https://github.com/aws/aws-lambda-dotnet/tree/master/Tools/LambdaTestTool

The source code for building Docker images used in Lambda to run image-based developments. For .NET developments, the Docker image used to deploy those developments in Lambda is a based on an Amazon Linux base image.

AWS SDKs and High Level Clients for .NET

The AWS SDK for .NET enables .NET developers to easily work with Amazon Web Services and build scalable solutions with Amazon S3, Amazon DynamoDB, AWS Lambda and more.

Documentation 
AWS X-Ray helps developers analyze and debug distributed applications. With X-Ray, you can understand how your application and its underlying services are performing to identify and troubleshoot the root cause of performance issues and errors.
AWS X-Ray helps developers analyze and debug distributed applications. With X-Ray, you can understand how your application and its underlying services are performing to identify and troubleshoot the root cause of performance issues and errors.

The Amazon Cognito Extension Client for .NET simplifies the authentication process of Amazon Cognito User Pools for .NET developers. It allows you to use various authentication methods for Amazon Cognito User Pools with only a few short method calls, along with making the process intuitive.

The AWS Secrets Manager Caching Client for .NET enables in-process caching of secrets for .NET applications.

AWS Tools for .NET CLI and Powershell

dotnet tool install -g AWS.Deploy.Tools 

NET CLI interactive tool to deploy .NET cloud-native applications to AWS in a few easy steps. Provides intelligent recommendations on the type of cloud compute best suited for each .NET application, generates the right IAM roles and the required deployment infrastructure, and deploy the application using the AWS Cloud Development Kit (AWS CDK). Supports deployments to Amazon Elastic Container Service (ECS), AWS App Runner , AWS Elastic Beanstalk, and Amazon S3 (for Blazor WebAssembly applications)

This repository contains AWS tool extensions to the .NET CLI. These tool extensions are focused on building .NET Core and ASP.NET Core applications and deploying them to AWS services. Many of these deployment commands are the same commands the AWS Toolkit for Visual Studio uses to perform its deployment features. This allows you to do initial deployment in Visual Studio and then easily transition from Visual Studio to the command line and automate the deployment.

This .NET CLI tool deploys AWS Lambda .NET Core projects directly to the AWS Lambda service or through AWS CloudFormation after building and packaging up the project.
dotnet tool install -g Amazon.Lambda.Tools
You can use CLI tools like nuget and dotnet to publish and consume packages from AWS CodeArtifact.
dotnet tool install -g 
AWS.CodeArtifact.NuGet.CredentialProvider 
The AWS Tools for Windows PowerShell and PowerShell Core let developers and administrators manage their AWS services from the PowerShell scripting environment.
The AWS Lambda Tools for Powershell can be used to create and deploy AWS Lambda functions written in PowerShell.

Infrastructure As Code (AWS CDK)

The AWS Cloud Development Kit (AWS CDK) is an open-source software development framework enabling you to define your cloud application resources using familiar programming languages, including C#.
Describes all the API operations for the CDK in detail. Also provides sample requests, responses, and errors for the supported web services protocols.

Modernization Tools

AWS App2Container is a command line tool to analyze your applications. It automatically generates a container image configured with the correct dependencies, network configurations, and deployment instructions for Amazon ECS or Amazon EKS.
Porting Assistant for .NET quickly scans .NET Framework applications to identify incompatibilities with .NET Core, finds known replacements, and generates a detailed compatibility assessment to jump-start your porting effort.
AWS Microservice Extractor for .NET simplifies the process of re-architecting applications into
smaller code projects. Modernize and transform your .NET applications with an assistive tool that analyzes source code and runtime metrics to create a visual representation of your application and its dependencies.