It’s 2023. .NET is a free, open-source development framework that runs on everything from Raspberry Pis to cloud data centres, server-side rendering is cool again, and despite what you might have read on LinkedIn, AI is not about to take away all our jobs.
In this two-day, workshop, you’ll learn how to design, deliver, and test state-of-the-art web applications that harness the power of the C# language and the ASP.NET Core platform.
Alongside familiar patterns like model/view/controller and dependency injection, the latest versions of ASP.NET Core introduced a streamlined hosting model, a new set of conventions for routing requests within our applications, and a completely new architecture known as “minimal APIs” for building API endpoints and microservices.
.NET also supports a thriving ecosystem of open source projects and packages. Entity Framework Core provides first-class abstractions over relational databases like MS SQL Server and PostgreSQL. Libraries like NodaTime can simplify and streamline your application logic. Projects like xUnit, Moq, and Shouldly let you test your applications at whatever level makes sense - from low-level unit testing to end-to-end integration tests that test your app’s entire HTTP pipeline. And on the front-end, it’s never been easier to incorporate technologies like SASS, CSS grids, responsive layouts, and even libraries like MJML for sending HTML emails.
Overview of .NET web application architecture
- .NET 6 vs .NET 7 - long term support, or latest & greatest?
- Using the dotnet CLI tool
- Creating a .NET web application
- Configuration management
- Registering services
- Testing your web application
Working with Relational Databases
- Lightweight data access with Dapper
- Managing data with Entity Framework Core
- Deploying database changes using EF Core Migrations
- Development on localhost using Docker
Business Logic and Domain Modelling
- Entities and data transfer objects
- Introducing abstractions
- Testing application behaviour and business logic
Locales, Times, and Timezones
- What’s wrong with System.DateTime?
- Introducing NodaTime
- Mapping conventions for custom datatypes
- Data formatting: dates, times, currencies
- Formatting data using System.Globalization
Frontend: Presentation and Validation
- Layouts, areas, partial views, and tag helpers.
- Working with Razor Pages
- Responsive layouts with CSS grid
- Hosting SASS and SCSS in .NET
- Styling forms and input validation
Deployment and Monitoring
- Cross-platform gotchas: what to watch out for when you’re developing on Windows or macOS and hosting on Linux
- Deploying to Microsoft Azure using GitHub Actions
- Application monitoring using Application Insights
Target Audience and Prerequisites
This workshop is aimed at developers with some experience of the C# language, the .NET platform, and some basic web development. If you understand classes, inheritance,
Console.WriteLine, and you know what the
<select> tag in HTML does, then you should be just fine.
Attendees will need a computer running .NET 6 or .NET 7, Docker, and a code editor that supports .NET such as Microsoft Visual Studio 2022, JetBrains Rider, or Visual Studio Code.
About the Trainer
Dylan Beattie has been building data-driven web applications with C# and .NET since the beta release of the .NET Framework back in 2002. He’s used .NET to build everything from tiny standalone microservices to large-scale distributed web applications,
Dylan is a Microsoft MVP and the creator of the Rockstar esoteric programming language, and he’s presented talks about technology and software development at conferences and events all over the world.
Dylan is online at https://dylanbeattie.net/ and on Twitter as @dylanbeattie.
Here’s what attendees have said about Dylan Beattie's .NET workshops:
- “ It was very nice overview of interesting technologies. Simple and fast. Exceeded my expectations. ”
- “ Everything was great, content, presentation, examples, answers to questions. All clear and understandable. ”
- “ I liked the way the lecturer kept the tempo and captured attention. Everything was well prepared and worked right away or almost right away. ”
- “ I really enjoyed the humour and that Dylan showed personality throughout the workshop. ”
- “ Really great organization and preparation. It shows that you have experience with this kind of workshops. ”
Upcoming Course Dates
No public dates are currently scheduled.
If you'd like to run this workshop for your team or at your conference, please get in touch
Alternatively, join the mailing list to find out when new course dates are announced.