So, my new book is out now! The title changed recently from Mastering ASP.NET Core 3 – Second Edition to Modern Web Development with ASP.NET Core 3 – Second Edition. It was Packt’s decision, and I didn’t really bother about that, although I think the former was more accurate. It’s around 700 pages, and it is divided in three parts:
On the first part, we can find the following chapters:
On the second part, we have:
Finally, on the third and last:
There is also an appendix on the dotnet tool.
I’d say the highlights are:
Should you wish to buy it in the next days, there is a discount code that you can use that will grant you a 50% discount: WEBDEV50.
I hope you enjoy it and I’d like to hear from you about the book!
My new book, Mastering ASP.NET Core 3.0 – Second Edition, for Packt Publishing, will be available from June 19. It is a almost total rewrite from my previous one, Mastering ASP.NET Core 2.0, and it covers all of the goodies that ASP.NET Core 3.0 and 3.1 brought along. I cover Razor Pages, Blazor, OData, gRPC and some less-known features as well.
For personal reasons, it was difficult to write, and, in fact, it should have come out long ago, but, if we think about it, if it had, I wouldn’t have had the chance to cover some technologies – such as Blazor WebAssembly – that were only released recently.
I will come back to this with more information, including the table of contents, soon.
In the end, I can say that I am happy with the result, and hope you, dear readers, enjoy it too!
The topics covered in this book are vast, so it should be no surprise the size of it: more than 800 pages. It spawns across 21 chapters, each of them ends with some exercises. It talks about pretty much everything .NET, as you can see:
Introduction to Visual Studio Code and Visual Studio 2019 for Windows and Mac. Presents some useful extensions for Visual Studio Code. Talks a bit about the .NET Framework and its branches and offspring, Xamarin, Mono and .NET Core. Also explains the intermediate language that .NET compiles to and how to produce native code from .NET. Also shows how to use Visual Studio Code to get code from GitHub and build console apps. Finally, it gives some pointers on how to get support from the Internet.
Presents all the C# versions from 1 until 8, the last one to date. Shows how to enable a specific version on a .NET project. Gives a an overview of the unchanging C# language features, like variables, data types, reference and value types, and presents a simple example on how to get input from the user.
Expands on the C# language started on the previous chapter introducing branching, conditions, pattern matching, assignment, operators, loops and casts.
Introduces functions, how to debug and unit test them.
Explains Object-Oriented Programming with C#. How references to assemblies and namespaces work. Field and property modifiers. How to use the return values of functions, including tuples. Method overloading, optional parameters. Partial classes. Properties with indexers and different levels of access.
Talks about interfaces and type inheritance. Explains events and delegates. Generic types. Reference and value types. The dispose pattern. Member overriding and hiding. Preventing inheritance. Polymorphism. Casting. Extension methods.
Packaging .NET components in assemblies and NuGet packages. The .NET Standard and .NET Core. Publishing applications. Decompiling assemblies. Publishing to NuGet. Porting to .NET Core.
Common .NET types and operations: numbers, string, regular expressions, collections, spans, indexes, ranges, network resources, types, attributes. Internationalization.
Files, file streams and serialization. Working with the filesystem. Text encoding. XML and JSON serialisation and compression.
Data encryption and decryption. Data hashing and signing. Random number generation. User authentication and authorisation.
Database programming with Entity Framework Core.
Using LINQ. Custom LINQ methods. LINQ to XML. Parallel LINQ.
Performance monitoring. Tasks. Synchronizing access to shared resources. async and await.
ASP.NET Core web applications. SignalR. Blazor.
ASP.NET Core Razor Pages. Using EF Core with ASP.NET Core. Razor Class Libraries.
ASP.NET Core MVC.
Using Content Management Systems (Piranha CMS).
ASP.NET Core Web API. Swagger and Open API. Health checks. WCF and gRPC are mentioned briefly.
Machine learning with ML.NET.
Windows Forms apps. Windows Presentation Foundation apps with .NET Core and Windows Compatibility Pack. The XAML Standard. Modern Windows apps.
Using Xamarin for building cross-platform mobile apps. Calling web services.
As you can see, this is a lot, and goes from the plain C# language to machine learning and Blazor. I’d say that some topics, such as Content Management Systems, could have been dropped, but other than that, pretty much everything that a developer longing to learn .NET could wish for is here. A great deal of ASP.NET Core, which is good, as it is for sure the strong part of .NET Core. So, if you’re one such developer, this is one book that you may want to get, you won’t feel disappointed! Definitely a good value for money!
I started reading a book by my MVP colleague Francesco Abbruzzese (@f_abbruzzese) on C# and TypeScript: Hands-On TypeScript for C# and .NET Core Developers. So far, it seems an interesting reading! Will write a review about it here, once I finish reading it. In case you want to know more, go get if from the Packt Publishing site: https://www.packtpub.com/application-development/hands-typescript-c-and-net-core-developers.
It was big challenge – the book has over 480 pages – and it spanned multiple .NET Core versions – 1.1 and 2.0. I tried to cover the most important things, even with some detail. The chapters are:
Whenever there are important differences, I mention the differences between ASP.NET Core 1.x and 2.x, although I think this will be less important over time.
Overall, it was an exciting task, but not one without obstacles. I must thank the team at Packt Publishing, namely, Siddhi Chavan and Abhishek Sharma for all their patience and support.
Do have a look and share your feedback! It is available from the Packt Publishing site, Amazon and others, either in hardcopy or ebook format. The source code is available at https://github.com/PacktPublishing/Mastering-ASP.NET-Core-2.0.
Some of you may be aware that my new book for Packt Publishing is out! It is titled Entity Framework Core Cookbook – Second Edition because it was meant to be the second edition of Entity Framework 4.1: Expert’s Cookbook. In fact, it is mostly a full rewrite.
It is organized in chapters:
Chapter 1: Improving Entity Framework in the Real World
Chapter 2: Mapping Entities
Chapter 3: Validation and Changes
Chapter 4: Transactions and Concurrency Control
Chapter 5: Querying
Chapter 6: Advanced Scenarios
Chapter 7: Performance and Scalability
When I started writing it, .NET Core was still in early RC1. Things changed a lot from RC1 to RC2 and then again to RTM, so I had to revisit all chapters in the end. It was a pity that EF Core 1.1 was released shortly after the book was closed, because I could have talked about it too. Also, there are things that I could have covered, like extending Entity Framework Core, but there were so many of them! Maybe in a future time!
Those of you who are interested can get a copy from the Pack Publishing site or from other sellers, either as an e-book or in hardcopy.
The good guys at Packt Publishing are at it again!
Packt Publishing is celebrating the Machine Learning Week. Machine Learning Week runs from Monday 18th January until 23:59 GMT on Monday 25th – throughout one will be able to save 50% on some of the most popular titles – such as Python, Java .NET and many more. Also, with a 50% discount on top titles, one can also pick up a 5-eBook bundle for just $50. Checkout link http://bit.ly/209h0lv!