The first 400 students can use code VERTICAL20 to get 20% off our new "From Zero to Hero: Vertical Slice Architecture" course!

Getting Started: GraphQL in .NET

Get started with GraphQL in .NET using C#

Created at Facebook in 2012 and released as open-source software in 2015, GraphQL has proven that it is here to stay. GraphQL is one of the "Big Three" when it comes to building modern APIs (alongside REST and gRPC), and it is the approach of choice for many big companies like GitHub, Shopify and thousands more. GraphQL solves many problems that developers encounter when building traditional REST APIs, and it does it with fashion, sporting an elegant read and write approach as well as a unique way to subscribe to data changes. In this 7-and-a-half-hour course, Michael Staib, a GraphQL steering committee member and creator of the popular GraphQL library HotChocolate, will assume you have no knowledge on this topic and take you to a very decent level where you'll be able to build GraphQL .NET applications using C#.

Curriculum

Welcome

1:38

What will you learn in this course?

2:07

Who is the course for and prerequisites

0:59

Why GraphQL?

6:06

Lets have a look at GraphQL

6:30

GraphQL operation structure explained

3:15

A quick look at the GraphQL transport protocols

7:24

Lets create our first GraphQL server!

5:03

The annotation-based schema building approach

1:49

An exploration of the GraphQL type system

1:27

GraphQL Object Types

3:07

GraphQL Interface Types

4:10

GraphQL Union Types

2:57

GraphQL Enum Type

3:54

GraphQL Input Objects

1:56

GraphQL OneOf Inputs

2:30

Getting Started with Entity Framework

9:36

Using GraphQL projections with Entity Framework

3:28

Field Middleware Explained

9:06

Paging in GraphQL

13:09

Filtering

12:52

Filtering and Sorting

12:08

Exploring Schema Building Approaches

11:00

Introduction

1:20

Building with Type Modules and automatic type registration

6:10

Splitting Root Types

2:40

Cursor Pagination in a layered architectures

9:24

Using type extensions in Hot Chocolate

5:30

Introduction to DataLoader

14:50

Using DataLoader with nested Paging

10:46

Introduction to GraphQL query patterns

9:11

The Entity pattern

9:16

Working with composite keys

14:58

Exposing internal identifiers

0:44

GraphQL Errors and Non-Nullability explained

5:43

Throwing Custom GraphQL Errors

5:12

Using Domain Errors in GraphQL Queries

11:07

Introduction to GraphQL mutations

5:09

Implementing a basic mutation

6:12

Mutation design principals

8:12

Mutation conventions

4:58

Error patterns for GraphQL mutations

15:26

Implementing Patch Mutations

5:23

Handling File Uploads with GraphQL

13:22

Introduction to GraphQL subscriptions

5:53

Implementing a basic subscription

13:02

Implementing a basic chat

14:29

Keeping state with replayable events

17:31

Longruninng Mutations

11:25

Introduction

3:19

Schema as an artifact

9:43

Schema export CLI

4:19

What is a GraphQL schema registry?

1:31

Setting up the schema registry

10:39

Setting up a CI build with the schema registry

7:17

Setting up a deployment build with the schema registry

9:53

Setting up a client registry

14:46

Introduction

0:56

Setting up aspire for developer telemetry

5:57

Adding Hot Chocolate Telemetry

6:12

Add Production Telemetry

14:01

Instrumentation Options

1:46

Custom Spans

3:25

Course Info

Level:
Getting Started
Duration:
7h 28m

Lifetime access

Add to Cart
Dometrain Pro

Want access to all of our courses? Subscribe to Dometrain Pro!

Subscribe to Pro

About the Author

author_img

Michael Staib

Michael is a member of the GraphQL technical steering committee, contributing to the GraphQL composite schema specification under the GraphQL Foundation. He is a Microsoft MVP and the author of the Hot Chocolate GraphQL Server for .NET. Michael frequently speaks at conferences and trains professionals in the .NET and GraphQL ecosystems, sharing his expertise and passion for these technologies.

More courses by Michael Staib