Logo von Developer

Suche
Abonnieren

Tägliche Top-News bei WhatsApp, Facebook Messenger, Telegram & Insta

preisvergleich_weiss

Recherche in 1.508.171 Produkten

Holger Schwichtenberg 64

Microsoft connect();: Version 1.1 der .NET-Core-Familie ist erschienen

Microsoft connect(); Version 1.1 der .NET Core-Familie ist erschienen

Dreieinhalb Monate nach der ersten Release-Version hat Microsoft nun eine erste funktionale Erweiterung für seine aus .NET Core, ASP.NET Core und Entity Framework Core bestehende neue .NET-Generation veröffentlicht.

Auf der Entwicklerkonferenz connect(); hat Microsoft .NET Core 1.1 vorgestellt und holt dabei neue Plattformen an Bord: Mit dem Release kommen Linux Mint 18, OpenSUSE 42.1, macOS 10.12 und Windows Server 2016 hinzu. Samsung liefert künftig auch .NET Core für Tizen.

Anzeige

Die neue Version 1380 bietet zusätzliche APIs, erläutert Microsoft. Damit sind aber nicht komplette Bibliotheken gemeint, sondern die Redmonder haben jede neue Klasse und jedes neue Klassenmitglied einzeln gezählt. Beim Blick in die Liste der API-Neuerungen finden Entwickler dann auch wenig, was sie typischerweise brauchen. Die meisten Ergänzungen betreffen interne Funktionen von .NET Core oder dienen der Unterstützung für die Version 7.0 der Programmiersprache C#. Die .NET Standard Library ändert den Versionsstand daher auch nur von 1.6 auf 1.6.1. Die von Microsoft unter dem Slogan "One library to rule them all" groß angekündigte Angleichung an die Programmierschnittstellen der Base Class Library des großen .NET Framework 4.6 soll erst im Jahr 2017 im Rahmen der .NET Standard Library 2.0 erfolgen.

Eine Performancesteigerung von Webanwendungen von rund 15 Prozent wollen die Macher durch Verwendung der Profile Guided Optimization (PGO) erreicht haben, die auch beim großen .NET Framework zum Einsatz kommt. Durch Aufzeichnung der tatsächlichen Nutzung des Programmcodes wird dessen Reihenfolge im Kompilat optimiert.

In der dreizehnten Ausgabe des TechEmpower-Webserverframework-Performanztest ist ASP.NET 1.1 bereits berücksichtigt und belegt dort den zehnten Platz in der "Plain Text"-Auswertung. Allerdings wird dabei ASP.NET Core auf Linux und ohne das MVC-Framework eingesetzt. Mit dem MVC-Framework rutscht ASP.NET Core in der Leistung auf den 29. Platz ab.

Unter "Plain Text" zeigt .NET Core auf Linux beeindruckende Ergebnisse – zumindest ohne MVC-Framework.
Unter "Plain Text" zeigt .NET Core auf Linux beeindruckende Ergebnisse – zumindest ohne MVC-Framework. (Bild: Techempower )

In ASP.NET Core hat Microsoft bisher fehlende Funktionen zum Umlenken von HTTP-Anfragen (URL Rewriting) ergänzt. Entwickler können nun in der Startup-Klasse mit regulären Ausdrücken, der XML-Syntax der Internet Information Services (IIS) oder der Mod_Rewrite-Syntax des Apache-Webservers Umlenkungen definieren. Auch eine Funktion zum Umlenken aller HTTP-Anfragen auf HTTPS ist realisiert.

Das frühere ASP.NET hatte einen Output Cache, der gerenderte Webseiten für eine definierbare Zeit zwischengespeichert hat. In ASP.NET Core 1.1 füllt diese in der Juli-Version noch bestehende Lücke das Paket Microsoft.AspNetCore.ResponseCaching in Verbindung mit dem Memory Cache (Microsoft.Extensions.Caching.Memory). Das Paket Microsoft.AspNetCore.ResponseCompression ermöglicht eine ZIP-Komprimierung der HTTP-Datenströme. Die Views, die in ASP.NET Core 1.0 immer zur Laufzeit kompiliert wurden, lassen sich nun zur Entwicklungszeit vorkompilieren.

ASP.NET-Core-Webanwendungen laufen immer in einem eigenständigen Prozess. Als Prozess-Host bietet Microsoft dafür in Version 1.1 neben Krestrel mit dem WebListener-Server eine Alternative an, die auf Basis des Windows-eigenen HTTP Server API auch Windows-spezifische Verfahren zur Authentifizierung, zum Port Sharing und Caching an Bord hat. Die Verwendung des Pakets Microsoft.AspNetCore.Server.WebListener zerstört jedoch die Plattformunabhängigkeit einer ASP.NET-Core-Anwendung.

Anzeige

Mit ASP.NET Core hat Microsoft View Components und Tag Helper zur Wiederverwendung von Markup und Logik eingeführt. In Version 1.1 gibt es nun eine Integration beider Konzepte. Während eine View Component bisher immer über den Befehl Component.InvokeAsync("viewcomponentname") in eine View einzubinden war, erledigt den Job nun eleganter ein Tag Helper (<viewcomponentname>…</viewcomponentname>).

Die Kernfunktionen von ASP.NET Core bilden Entwickler in der Startup-Klasse durch eine Aneinanderreihung von Middleware-Komponenten. Mit der Annotation [MiddlewareFilter] lassen sich nun auch Middleware-Komponenten auf einzelne Controller oder Actions beschränken. Die neue Komponente Microsoft.AspNetCore.AzureAppServicesIntegration speichert alle von den Logger-Objekten erzeugten Nachrichten in Microsofts Cloud. Mit den Paketen Microsoft.AspNetCore.DataProtection.Redis, Microsoft.AspNetCore.DataProtection.AzureStorage und Microsoft.Extensions.Configuration.AzureKeyVault können Entwickler sensible Informationen wie kryptografische Schlüssel in Redis oder Microsoft Azure nutzen. Im TempData-Objekt gespeicherte Daten lassen sich nun auch per Cookie auf dem Client speichern.

Auch für den Objekt-Relationalen Mapper Entity Framework ist eine erweiterte Version 1.1 erschienen. Hier bringt Microsoft einige Programmierfunktionen aus dem Vorgänger Entity Framework 6.1 zurück, die in Entity Framework Core 1.0 fehlten. Dazu gehört die Suche nach Objekten im Cache mit Find(), das explizite Nachladen verbundener Objekte mit Load(), das erneute Laden bereits geladener Objekte mit Reload() sowie die einfache Abfrage des alter und neuer Objektinhalte mit GetDatabaseValues() und GetModifiedProperties().

Auch das Mapping auf einfache Fields anstelle von Properties und die Wiederaufnahme abgebrochener Datenbankverbindungen (Connection Resiliency) zum Microsoft SQL Server oder SQL Azure ist wieder möglich. Ganz neu ist die Möglichkeit, Objekte auch auf die speicheroptimierten Tabellen von Microsoft SQL Server 2016 abzubilden. Außerdem haben die Macher die API vereinfacht, mit der sich Standardfunktionen von Entity Framework Core durch eigene Implementierungen ersetzen lassen.

Auch mit der Version 1.1 der Core-Produkte bleiben alle Werkzeuge einschließlich der Visual Studio-Integration weiterhin im Preview-Stadium. Microsoft hatte angekündigt, von den JSON-basierten Konfigurationsdateien zu MSBuild zurückzukehren – allerdings mit einem vereinfachtem XML-Format.

Für das entsprechende Projektformat existiert nun eine erste Alpha-Version in Verbindung mit Visual Studio 2017, Visual Studio Code und dem neuen Visual Studio for Mac. Bestehende project.json-Dateien können Entwickler in .csproj-Dateien konvertieren, müssen jedoch bedenken, dass es keine Option zur Rückkonvertierung gibt, falls sie später doch mit dem JSON-Format oder Visual Studio 2015 weiterarbeiten möchten. (Holger Schwichtenberg) / (rme)

64 Kommentare

Anzeige
  1. Build 2017: Microsoft stellt Version 2.0 der .NET-Core-Produkte vor

    Build 2017: Microsoft stellt Version 2.0 der .NET-Core-Produkte vor

    Parallel zu den Preview-Versionen von .NET Core 2.0, ASP.NET Core 2.0 und Entity Framework Core 2.0 gibt es Patches für die 1er-Serie der Core-Produkte.

  2. .NET Core 2.0 und die zugehörige Produktfamilie sind fertig

    .NET Core 2.0 und die zugehörige Produktfamilie sind fertig

    Microsoft hat die zweite Hauptversion seiner Core-Produktfamilie mit .NET Core, ASP.NET Core und Entity Framework Core bereitgestellt. Parallel ist das dritte Update zu Visual Studio erschienen, das die Core-2.0-Produkte unterstützt.

  3. Visual Studio 2017 ist verfügbar

    Visual Studio 2017 ist verfügbar

    Mit viel Tamtam hat Microsoft ein neues Release seiner Entwicklungsumgebung vorgestellt. Zusammen mit Visual Studio 2017 sind außerdem die .NET-Core-Werkzeuge erstmals in einer endgültigen Version erschienen.

  4. .NET Standard 2.0 ist fertig und .NET Core 2.0 auf der Zielgeraden

    .NET Standard 2.0 ist fertig und .NET Core 2.0 auf der Zielgeraden

    Microsoft hat die Arbeiten an Version 2.0 der Standardisierung der .NET-Programmierschnittstelle abgeschlossen. Die Freigabe von .NET Core 2.0 ist im Rahmen der .NET Conf im September geplant. Und auch für den Nachfolger gibt es bereits Pläne.

  1. Zielgerade für .NET Core: Release Candidate 2 veröffentlicht

    Die RC2-Versionen von .NET Core 1.0, ASP.NET Core 1.0 und Entity Framework Core 1.0 sind verfügbar.

  2. Entity Framework Core Reverse Engineering mit dem Kommandozeilentool dotnet

    Manuelle Ergänzung der .csproj-Datei

    Statt PowerShell-Commandlets lässt sich bei der Entwicklung von .NET-Core-Projekten auch das plattformübergreifend verfügbare Kommandozeilenwerkzeug dotnet aus dem .NET Core SDK einsetzen.

  3. .NET Core 2.0 mit Visual Studio 2017 nutzen

    .NET Core 2.0 mit Visual Studio 2017 nutzen

    Wer das am 14. August 2017 erschienene .NET Core 2.0 nutzen will, braucht Visual Studio 2017 Update 3 (interne Versionsnummer: 15.3) und zusätzlich das .NET Core 2.0 SDK.

  1. WPA2: Forscher entdecken Schwachstelle in WLAN-Verschlüsselung

    WLAN

    Sicherheitsforscher haben offenbar kritische Lücken im Sicherheitsstandard WPA2 entdeckt. Sie geben an, dass sich so Verbindungen belauschen lassen.

  2. Kilonova nachgewiesen: Forscher beobachten erstmals direkt Quelle von Gravitationswellen

    Kilonova

    Die größten Detektoren haben schon mehrmals Gravitationswellen als Zeugnisse extremster Ereignisse im All registriert. Nun konnten sie dank ihnen erstmals direkt die Verschmelzung zweier Neutronensterne beobachten. Für Astronomen beginnt eine neue Ära.

  3. Fahrbericht Kia Stinger GT

    "Wer soll das denn kaufen?", fragten die meisten Autofreunde, als sie Bilder von Kias Stinger sahen, denn die Bilder verrieten es nicht. Man muss ihn fahren, dann ist die Antwort glasklar: Freunde der Fahrdynamik

  4. Weniger Belohnung für Miner: Ethereum führt Byzantium-Update ein

    Weniger Belohnung für Miner: Ethereum führt Byzantium-Update ein

    Der erste Teil eines umfangreichen Updates für die Kryptogeldplatfform Ethereum ist offenbar erfolgreich über die Bühne gegangen. Zu den Änderungen gehört eine geringere Belohnung für Miner und die Verschiebung der "Difficulty Bomb".

Anzeige