Developing .NET Core Applications with DynamoDB on AWS

This course, Developing .NET Core Applications with DynamoDB on AWS, will teach C# developers how to create an ASP.NET Core web application that interacts with Amazon Web Services (AWS) DynamoDB.
Course info
Level
Beginner
Updated
Dec 5, 2018
Duration
3h 2m
Table of contents
Course Overview
Introduction to AWS
Creating a Data Model and Table with DynamoDB
Setting up Your ASP.NET Core Web Application
Working with Items in DynamoDB Using the Object Persistence Model
Working with Items in DynamoDB Using the Document Model
Working with Items in DynamoDB Using the Low Level Model
Creating a Test Framework for DynamoDB
Description
Course info
Level
Beginner
Updated
Dec 5, 2018
Duration
3h 2m
Description

At the core of building web applications that interact with Amazon Web Services (AWS) DynamoDB is a thorough knowledge of ASP.NET Core and the AWS SDK for .NET. In this course, Developing .NET Core Applications with DynamoDB on AWS, you will learn how to create an ASP.NET Core application that interacts with DynamoDB using the AWS SDK for .NET. First, you will learn how to setup and create a DynamoDB table in the AWS Management Console. Next, you will explore each of the DynamoDB models that are available for you to use to interact with DynamoDB from within your .NET Core application. Finally, you will discover how to create an integration test framework that will test each of the application endpoints. When you are finished with this course, you will have a foundational knowledge of how to create a .NET Core application, use all three DynamoDB models using the AWS SDK for .NET, and set up an integration test framework that will help you as you move forward to creating your own .NET Core applications that interact with DynamoDB on AWS, whether personal or commercial.

About the author
About the author

Daniel is a .NET Developer and Graduate Team Lead living in New Zealand and working at Xero. His focus recently has been on .NET Core and Cloud Platforms. He enjoys helping others and passing on information through running Coding Bootcamps, a YouTube channel where he creates how-to tutorials, and he also blogs regularly.

Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hi everyone. My name is Daniel Donbavand, and welcome to my Pluralsight course on Developing. NET Core Applications with DynamoDB on AWS. This course will teach you how to build a real-world ASP. NET Core application working with items in Amazon Web Service's DynamoDB. Some of the major topics that we'll cover are creating a DynamoDB table inside the AWS Management Console, setting up a brand new ASP. NET Core application. The DynamoDB SDK for. NET has three models that allows us to interact with DynamoDB from within our application. We'll cover all three models, including the differences between them, and how to implement them inside our. NET Core application. Adding tests is an important part of creating any application. I'll show you how we can create integration tests using an in-memory test server and a local instance of DynamoDB. At the end of this course, you'll be comfortable creating a. NET Core application, implementing any of the three DynamoDB SDK for. NET models, and creating an integration test framework using an in-memory test server and local instance of DynamoDB. Before beginning this course, I recommend that you are familiar with C# and object-oriented programming. I'm really excited about this course, and I hope that you'll join me in learning how to create a. NET Core application with DynamoDB on AWS.

Working with Items in DynamoDB Using the Object Persistence Model
Hi, and welcome to the Working with Items in DynamoDB Using the Object Persistence Model from the Developing. NET Core Applications with DynamoDB on AWS. My name is Daniel, and I'll be taking you through this module. The DynamoDB SDK for. NET offers three models that can be used, the Object Persistence, document, and low-level model. In this module, we'll be focusing on the Object Persistence model. We will discuss why this model exists, what DynamoDB operations we have access to from within this model, and what operations are missing from it. We then jump into our demo where we will continue to add to our. NET Core template that we created in the previous module. We'll be adding the endpoints in the DynamoDB calls using the Object Persistence model. The Object Persistence model is a wrapper around the low-level DynamoDB model. We are able to store, load, and query DynamoDB using this model. Out of the three models, the Object Persistence model is the easiest to code against. This model enables us to map our client-side classes to our DynamoDB table. Each object instance then maps to an item in the corresponding table. While we're able to do most things with this model, one of the big missing features is the ability to create, update, and delete DynamoDB tables.

Working with Items in DynamoDB Using the Document Model
Hi, and welcome to the Working With Items in DynamoDB Using the Document Model from the Developing. NET Core Applications with DynamoDB on AWS. My name is Daniel, and I'll be taking you through this module. The document model is the second model that is offered by the DynamoDB SDK for. NET. In this module, we'll be focusing on the document model. We will discuss what the difference is between the document and the Object Persistence model, and we'll look at what DynamoDB operations we have access to from within this model and what operations are missing. We then jump into demo where we will reuse as much code as possible that we added when implementing the Object Persistence model into our. NET Core application, and swap out the Object Persistence code with the document model equivalent. The document model is also a wrapper around the low-level model. The document model's primary classes are the table and document class. We use the table class to put, get, and delete items, we are also able to use the scan and query methods within this model. The document model requires us to write a little more code than the Object Persistence model, and like with the Object Persistence model, we are unable to create, update, and delete DynamoDB tables.

Working with Items in DynamoDB Using the Low Level Model
Hi, and welcome to the Working with Items in DynamoDB Using the Low Level Model from the Developing. NET Core Applications with DynamoDB on AWS. My name is Daniel, and I'll be taking you through this module. The low-level model is the third model that is offered by the DynamoDB SDK for. NET. This model is what the Object Persistence and document model wrap. We will cover what the low-level model is and how it differs from the Object Persistence and document model. We then jump into our MovieRank demo solution, where just like we did when implementing the document model, we will reuse as much code as possible, and then look to swap out the document model code with the low-level model equivalent. The low-level model as previously mentioned is the third model that is offered to us to interact with DynamoDB from within our. NET application. The Object Persistence and document model wraps the low-level model's operations. This model gives us all features offered by DynamoDB. The low-level model is the only model that we can use to create, update, and delete DynamoDB tables. A word of caution, this model requires us to write a significant amount of extra code to interact with DynamoDB.

Creating a Test Framework for DynamoDB
Hi, and welcome to the Creating a Test Framework for DynamoDB module from the Developing. NET Core Applications with DynamoDB on AWS. My name is Daniel, and I'll be taking you through this module. In this module, we'll be creating an integration test framework using an in-memory test server. This will allow us to spin up an in-memory instance of our application and make requests to our application. We will set up and ensure Docker is running on our computer, so we can use a DynamoDB Docker image that will allow us to spin up a local instance of DynamoDB to test our application against. We will then create a set of tests that will test the MovieRank application that we have just built.