.NET Core, C# 6, EF Core, CLI, DI, ASP.NET Core

Upgrading to .NET Core

.NET has more than a decade of history. With .NET Core there are the biggest changes to the runtime since .NET 1.0. .NET Core is not only for Windows, but also for Mac and Linux systems, open source, built with smaller packages to allow for faster innovations, and the runtime can be delivered with the application which allows using newer runtimes with the application independent what's available with the host server.

This workshop gives you all the new information about .NET Core, what's different with ASP.NET Core, the new version of Entity Framework, Entity Framework Core, as well as syntax enhancements for C# 6, and what's planned for C# 7.0.

Topics

  • .NET Core Overview
  • C# 6 Languager Extensions
  • .NET Compiler Platform
  • .NET Core Foundations
  • ASP.NET Core
  • Entity Framework Core
  • Planned Features for C# 7.0

.NET Core Overview

We start with introducing .NET Core, what's the reason why it's changed, the new .NET Core Command Line Interface (CLI) tools (or dotnet tools), the new project file format, and more. You learn when it can be used (also how existing legacy applications can take advantage of), and when it's better not to use it yet. You will also learn about the new .NET Standard that brings us One .NET going forward.

C# 6 Language Extensions

Do you already know the C# 6 language features? Here we cover expression-bodied members, auto implemented property initializers, read-only auto properties, the nameof operator, the null propagation operator, string interpolation, dictionary initializers, exception filters, and await in catch. The lab is a project where you should change existing C# 5.0 code to C# 6.

.NET Compiler Platform

Roslyn, the .NET Compiler Platform, allowed for an easier implementation of all the new C# syntax features. Roslyn is important for tool vendors, but can also be used by you for automatically code generation, transformation, and code analysis - that's why it's introduced here.

.NET Core Foundations

With the foundations you learn the new concepts where .NET Core is based on, such as the new Microsoft.Extensions.DependencyInjection framework for a dependency injection container, the new logging framework, and the new configuration framework. With these new frameworks you can also make use of third-party dependency injection containers, logging, or configuration features, but still use the same API.

Many of the new libraries can be used with existing applications.

ASP.NET Core

ASP.NET Core is an extremly efficient Web application framework where you can run your Web applications not only on Windows but also many different Linux variants including RedHat and Ubuntu. You learn the foundations of this framework, and also higher level features such as ASP.NET MVC. If you already created ASP.NET MVC applications, the new version looks very familiar. However, behind the scenes everything changed - and of course new features have been added to ASP.NET MVC as well. You learn how Visual Studio integrates NPM, Gulp, Bower, how DI is used with ASP.NET Core, create custom middleware, make use of Tag Helpers and implement your own, use View Components, and more.

Entity Framework Core

Entity Framework got a complete rewwrite as well. It's now not only a mapping to relational databases, but supports NoSQL as well, and of course is also available on Linux and Mac. You learn the new features of EF Core, what's still missing from Entity Framework 6, and how you can use it with your applications.

Planned Features for C# 7.0

C# 7.0 is already near. You learn about the new features that are coming such as tuples, patterns, binary literals, digit separators, and more.

Flexible Content

This workshop is offered as company-based workshop and occasionaly with open course dates. I'm flexible in adapting this workshop to your specific needs. Get in contact to discuss the knowledge you already have and the goals of your project.

Interested in this workshop?