ASP.NET Core 3.0 Workshop

Published on Friday, July 26, 2019

ASP.NET Core 3.0 Workshop

UPDATE (September 29th): The workshop sample and materials have been updated to the final version of .NET Core 3.0. All the missing pieces are implemented.

Workshop content

  1. Session #0 - Prepare your environment by installing and configuring prerequisites
  2. Session #1 - An introduction to .NET Core and ASP.NET Core in form of presentations
  3. Session #2 - Working with .NET Core CLI tools and Visual Studio 2019, analyzing project templates
  4. Session #3 - Choosing a domain to develop and creating user stories for it
  5. Session #4 - REST API introduction, creating Web API project, introduction to Postman and configuring git
  6. Session #5 - Creating domain models, EF Core context and migrations
  7. Session #6 - Creating view models and controllers, validation, error handling, using Postman
  8. Session #7 - Securing API with JWT token based auth
  9. Session #8 - Creating unit and integration tests, adding Swagger support
  10. Session #9 - Versioning APIs, usage limiting, monitoring and creating health checks
  11. Session #10 - Introduction to Blazor and creating client-side Blazor client
  12. Session #99 - Resources and further reading

Introduction

For quite some time, I was thinking about creating a workshop for ASP.NET Core. After some talks I had with members of EESTEC student organization and the management of Seavus, the idea started to shape up. My plan was to build something that could be reused for various events - for community organized events, inside the company, for conferences, and of course to be usable for others too.

After almost two months of sleeping less, preparing samples, writing instructions and having a first live workshop with students in duration of 10 days, there's finally something to share. The current version of workshop, with sample project and instructions, is available on GitHub. I was heavily influenced by .NET Foundation's presentations and workshops and I even took some of the materials from there - parts of presentation, presentation template and the cover image for the workshop. Why not, my user group and myself are members of .NET Foundation organization. You could be too! :)

So, what is this workshop about? Other than ASP.NET Core 3.0 of course. Well, at the end, I have decided to go with Web API route. After the introduction to .NET Core 3.0 and ASP.NET Core and looking through the available templates, together with attendees, a domain is chosen and implemented as REST Web API. That API is then improved and finally consumed by frontend SPA application. To continue at the bleeding edge, we are not using JavaScript SPA frameworks like Aurelia (the best one out there ;)), React, Vue or Angular, but a completely new thing called Blazor!

The workshop itself is split into 10 parts (for now). Each part has it's own document with instructions. There is a prerequisites document that you can use to prepare your environment. If you want to present it to others, there's a speaker notes document to remind you what should you go through during each part.

Note that both ASP.NET Core 3.0 and client-side Blazor are at the moment in preview phase. .NET Core 3.0 will launch in September during .NET Conf and client-side Blazor sometime next year. The workshop is updated to Preview 7, which came out a few days ago and has a go-live license. There are some things in workshop that could not be achieved with the current version. I still consider the workshop a work in progress, until the final versions of .NET Core 3.0 and client-side Blazor are out and the workshop updated.

You are welcome to use the workshop as you see fit. You can follow it by yourself, using the provided instructions. Or you could present the workshop to your friends, community or company. You could also create a derived version of workshop from it - in which case I would be grateful for an attribution :). I hope it will be useful.

I'm also interested in presenting the workshop as well as giving regular talks, so if you have something in mind, like a community event, conference, etc., let me know.

Live workshop

At the end, here are some pictures from the live workshop we had in Banja Luka. Thanks EESTEC, Seavus, BLbit, Bit Alliance and ETFBL for the help in organizing the event! And of course, thanks to all attendees, you were great!

ASP.NET Core 3.0 Workshop, Banja Luka ASP.NET Core 3.0 Workshop, Banja Luka ASP.NET Core 3.0 Workshop, Banja Luka ASP.NET Core 3.0 Workshop, Banja Luka ASP.NET Core 3.0 Workshop, Banja Luka

comments powered by Disqus