Terraform Modules for AWS: A Practical Guide for .NET Developers
Learn a simple, repeatable way to structure and build Terraform modules on AWS so your .NET services stay consistent, secure, and easy to reuse.
Deep dives into .NET, AWS, Docker & Modern Architecture
Showing 25-36 of 143 articles
Learn a simple, repeatable way to structure and build Terraform modules on AWS so your .NET services stay consistent, secure, and easy to reuse.
In this hands-on guide, we'll use .NET Aspire 13, DynamoDB Local, and .NET 10 minimal APIs to build a full CRUD Web API against DynamoDB—without ever touching an AWS account. Then we'll see how to flip a small configuration switch to point the same code to real DynamoDB in AWS.
In this hands-on guide, we will use .NET Aspire 13 and the latest .NET 10 SDK to build a cloud-ready notifications system that talks to real AWS services like DynamoDB, SNS, and SQS, while keeping the entire local development experience orchestrated from a single Aspire app host.
Learn how to use ProblemDetails in ASP.NET Core to standardize error responses in your Web APIs. Understand default behavior, customization, exception handling, and best practices for building consistent, developer-friendly APIs.
Learn how to automate the deployment of your .NET applications to AWS App Runner using Terraform. This guide covers infrastructure-as-code setup, CI/CD integration, and practical tips to streamline your cloud deployments.
Learn how to extract text from PDF documents using AWS Textract and .NET-based AWS Lambda functions. This guide walks .NET developers through building a serverless OCR pipeline using S3 triggers, Textract integration, and real-world implementation tips for handling document processing in the cloud.
Learn how to efficiently upload large files in ASP.NET Core using Amazon S3's multipart upload feature and pre-signed URLs. This hands-on guide walks you through building a scalable, client-driven upload workflow using a .NET 9 Web API and a Blazor WebAssembly frontend. You'll learn how to generate pre-signed URLs, handle file chunking, perform parallel uploads, and finalize the upload with minimal server load. Ideal for developers looking to offload file handling to S3 while maintaining full control from a .NET-based stack.
Learn how to build scalable, fault-tolerant serverless workflows using AWS Step Functions and .NET Lambda functions. This guide is tailored for .NET developers who want to move beyond simple Lambda functions and orchestrate complex workflows with retries, parallel executions, and state management. We’ll cover the basics of Step Functions, how they integrate with .NET Lambda projects, real-world architecture examples, setup instructions, error handling, and when to avoid using them.
Middleware is a core component of the ASP.NET Core request pipeline, responsible for handling requests and responses efficiently. Understanding how middleware works, its execution order, and best practices is essential for building scalable and maintainable Web APIs. In this guide, we’ll explore the fundamentals of middleware, how requests are processed in ASP.NET Core, and how to implement custom middleware to enhance your applications.
Learn how to build a fully serverless, production-ready image processing pipeline on AWS using .NET. This guide walks through uploading images via a minimal .NET 9 Web API, triggering S3 event notifications to an SQS queue, and processing those events in a Lambda function using ImageSharp. You'll learn how to resize images into optimized thumbnails, upload them to an output S3 bucket, and monitor the workflow using CloudWatch. The architecture is event-driven, scalable, and cost-efficient—ideal for modern applications handling user-generated content.
Scrutor is a lightweight, open-source library that extends .NET’s built-in Dependency Injection with powerful assembly scanning features. In this article, you’ll learn how to use Scrutor to automatically register services by convention—based on interface names, lifetimes, or attributes. We’ll walk through real-world examples like scanning entire assemblies, registering services with custom logic, and cleaning up your DI setup for maintainability and scalability.
Keyed Services in .NET 8 make it easier to work with multiple implementations of the same interface. Instead of writing custom factories or using service locators, you can now register and resolve services by a simple key. This makes your code cleaner, easier to manage, and more flexible. In this article, you’ll learn what Keyed Services are, how to use them in real-world scenarios, and when to apply them in your projects.
Join 8,000+ developers learning to leverage AI for faster .NET development, smarter architectures, and real-world productivity gains.