It was a long trip to complete the 10th edition of Professional C# – Professional C# 6 and .NET Core 1.0. It’s available now!
With the new book I’m also starting a new blog. This blog will cover all the topics and more available with the book.
What’s in the book?
The book not only covers C# syntax, but also both the traditional .NET Framework as well as the new multi-platform open-source framework .NET Core. Creating client applications is covered with several chapters about WPF and the Universal Windows Platform. You can also read Web applications and Web services with ASP.NET Core 1.0, ASP.NET MVC 6, ASP.NET Web API, as well as SignalR and WebHooks. Don’t expect to read anything about ASP.NET Web Forms in this book. For ASP.NET Web Forms you need to read an older edition of this book, e.g. Professional C# 5 and .NET 4.5.1. The new edition has a focus on new technologies that you use creating new applications and services.
What version of .NET Core is used?
At this time, only RC1 is available with .NET Core from a Microsoft download. RC1 allows for Go-Live. Newer versions are available on the GitHub server. Using the newer versions you need to be aware on issues that might differ on a daily base.
Contrary to previous releases of the .NET Framework, a lot changed between RC1 and RC2. The book covers the newer version along with the new .NET Core command line tools (CLI).
To make it easy for you to work with the sample code, the code currently available from the Wrox site offers projects that you can open with Visual Studio 2015 and the ASP.NET Core RC1 tools. This code differs a little from what you can read in the book. It’s not so much the code itself, but mainly the project files that changed. To be truthful, the ASP.NET code changed in several places.
As RC2 and RTM are available, the code available on the Wrox site will be updated.
You can also get all the code samples on GitHub. Here you can get newer versions, additional samples, as well as experiments with C# 7. For the C# 7 experiments, you need to use Visual Studio “15”.
More details about Professional C# 6
The book covers the syntax of C#, including the C# 6 syntax extensions such as
- static using
- expression bodied methods
- expression bodied properties
- auto implemented property initializers
- read-only auto properties
- nameof operator
- null propagation operator
- string interpolation
- dictionary initializers
- exception filters
- await in catch
Of course all the older features of C# are covered as well. With the framework chapters I’ve made sure the code runs both with the .NET Framework as well as .NET Core. This resulted in several changes, e.g. with collections.
You can read features of Visual Studio 2015, the .NET Compiler Platform (Roslyn), unit testing, diagnostics and application insights, tasks and parallel programming, synchronization, files and streams, security, networking, localization, XML and JSON, and more.
Creating client applications, the book covers Windows Presentation Foundation (WPF) and the Universal Windows Platform (UWP). You can read 8 chapters about these technologies (and other chapters include WPF and UWP samples as well).
For Web applications and services, the ASP.NET Core chapter introduces ASP.NET Core 1.0. A technology you should definitely check to use it with your Web applications. This technology not only has the advantage that you can run it not only on Windows systems, but also on different Linux distributions as well as OS X. This might not be an issue for you. Compared to previous ASP.NET versions, the code made it through a major cleanup for high performance. You should consider this technology for new projects and probably existing projects in the long term.
I have some more information about the book:
What’s in there for WPF Programmers
What’s this blog about?
Expect articles covering topics from the book, as well as other topics that will be of interest for my readers and attendees of my workshops, e.g. using Microsoft Azure, Xamarin, Cognitive Services, and more.
I hope you enjoy my blog – and my new book!
7 thoughts on “Professional C# 6 and .NET Core 1.0”