© Sylverarts Vectors/shutterstock.com, © S&S Media
Vor allem Bugfixes - und wieder Breaking Changes

.NET Core 3.1 ist reif


.NET Core 3.1 ist am 3. Dezember 2019 erschienen. Ungewöhnlich ist: Es gibt nur sehr wenige neue Funktionen, sondern vor allem Fehlerbehebungen und sogar inkompatible Änderungen, die es bei einer Version mit Änderung der Versionsnummer an der zweiten Stelle gar nicht geben dürfte.

.NET Core 3.0 einschließlich Entity Framework Core 3.0 und ASP.NET Core 3.0 sind am 23. September 2019 erschienen. Wer diese Versionen intensiv in der Praxis einsetzt, wird einige Unzulänglichkeiten bemerkt haben. Man könnte spotten: Dass diese Versionen schon im September erschienen sind, liegt nicht daran, dass sie fertig waren, sondern daran, dass Microsoft im Mai 2019 das Erscheinen für die .NET Conf 2019 am 23. September verkündet hatte.

.NET Core 3.1 mit Entity Framework Core 3.1 und ASP.NET Core 3.1 sollten laut der Ankündigung vom Mai schon im November 2019 erscheinen. Das hat Microsoft dann aber auf Dezember vertagt, was auch gut war.

Bugfixes

Die 3.0er Versionen enthielten eine Reihe von kleinen und größeren Problemen, zum Beispiel bei der Benutzerverwaltung und Authentifizierung in ASP.NET Core Blazor Server. Während man mit Blazor Server eine Single Page Application (SPA) erstellen kann [1], basieren die von Microsoft in ASP.NET Core Identity gelieferten Webseiten zur Benutzerverwaltung und Authentifizierung noch auf ASP.NET Core Razor Pages, also einer klassische Multi Page Application (MPA). Solange man in ASP.NET Core 3.0 diese Webseiten im Standardlayout von Microsoft verwendete, funktionierte die Integration zwischen Razor Pages und Blazor Components gut. Sobald man aber zur Anpassung des Layouts die Razor Pages mit Add/New Scaffolded Item/Identity explizit als Templates in das Projekt hineingenerieren lies, sah man die Menüzeile plötzlich doppelt. Microsoft hatte die Layoutseiten falsch verschachtelt, der Entwickler musste es selbst lösen. In ASP.NET Core 3.1 ist das gelöst.

Einen echten Showstopper gab es in .NET Core 3.0, wenn man eine klassische .NET-Framework-basierte Anwendung (z. B. Windows Forms oder Windows Presentation Foundation), die noch mit typisierten DataSets (.xsd-Dateien) arbeitet, auf .NET Core migrieren wollte. Das war in der Zeit vor Entity Framework (gerade in Windows Forms- und WPF-Anwendungen) üblich und kommt daher auch heute noch in einigen Projekten vor. Typisierte DataSets sollten zwar in .NET Core 3.0 möglich sein, dem Autor dieses Beitrags fiel in einem entsprechenden Projekt aber auf, dass der von den .xsd-Dateien generierte Progr...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang