Skip to content

Nextended.NET-Bibliotheken, die nicht im Weg stehen

Extension Methods und eigene Typen, ausdrucksbasiertes Caching, Graph-Laden für EF Core, berechtigungsabhängiges Response-Shaping, ein Roslyn-Source-Generator und acht Hosting-Integrationen für .NET Aspire. Unabhängige Pakete auf einer kleinen Basis.

Nextended

Die Pakete

Aus einer Datei erzeugt

Diese Liste, die Seitenleiste und die Tabellen in jedem README stammen aus docs/data/packages.json. Ein dort ergänztes Paket aktualisiert alle davon — sie können also nicht auseinanderlaufen.

Kernbibliotheken

PaketBeschreibungBeispiel
Nextended.CoreBasisbibliothek — Extension Methods, eigene Typen (Money, Date, BaseId, SuperType), Class Mapping, Deep Clone, Verschlüsselung, Hashing und die Attribute für die Codegenerierung.
Nextended.CacheAusdrucksbasiertes Caching — automatische Cache-Keys aus Methodenausdrücken, CacheProvider mit bedingter Invalidierung, thread-sicheres AddOrGetExisting.

Datenzugriff

PaketBeschreibungBeispiel
Nextended.EFEntity-Framework-Core-Erweiterungen — Graph-Laden (LoadGraphAsync, IncludeAll, MultiInclude), deklarative Include-Definitionen, Paging, dynamisches Sortieren und Bulk-Operationen.

ASP.NET Core & Web

PaketBeschreibungBeispiel
Nextended.WebASP.NET-Core-Werkzeuge — OData ohne Konfiguration (AddODataAuto), kombinierbare OData-Applier für IQueryable, typisierte Controller-URLs, Streaming-Download-Helfer und ein Background-Executor, der einen aufgezeichneten Request erneut abspielen kann.
Nextended.ResponseFiltersProviderunabhängige Fluent-Pipeline, die Response-DTOs vor der Serialisierung schwärzt, maskiert, rundet, kürzt, hasht, ausdünnt und umstrukturiert — pro Request, pro Benutzer, pro Berechtigung.
Nextended.ResponseFilters.AspNetCoreASP.NET-Core-Adapter für Nextended.ResponseFilters — registriert die Pipeline als globalen IAsyncResultFilter und spielt strukturelle Änderungen auf den serialisierten JSON-Baum zurück.

UI-Bibliotheken

PaketBeschreibungBeispiel
Nextended.BlazorBlazor-Helfer — IBrowserFile-Erweiterungen (Bytes, Data-URLs, Downloads), ein hierarchisches Modell zum Navigieren in hochgeladenen ZIP-/TAR-/RAR-Archiven, MIME-Typ-Erkennung und Reflection über Komponentenparameter.
Nextended.UIWPF- und Windows-Desktop-Helfer — globaler Input-Binding-Manager mit Hold- und Sequenz-Erkennung, DirectInput- und XInput-Gamepad-Reader, Steuerelemente zum Erfassen von Tastenkombinationen, Converter, Behaviours, Markup-Extensions und zur Laufzeit definierte PropertyGrid-Typen.

Codegenerierung & Werkzeuge

PaketBeschreibungBeispiel
Nextended.ImagingBildverarbeitung — seitenverhältnistreues Skalieren, Zuschneiden, Farbersetzung, helligkeitsbasierte Vordergrundfarbwahl, Thumbnail-Erzeugung, Byte-/Data-URL-Konvertierung und MIME-Erkennung über Magic Bytes.
Nextended.CodeGenRoslyn-Source-Generator — DTOs und Interfaces aus Ihren Entities, stark typisierte Klassen aus JSON/XML, Lookup-Tabellen aus Excel und Dokumentation aus Quelldateien.CodeGenSample

.NET Aspire Hosting

PaketBeschreibungBeispiel
Nextended.AspireKonditionale AppHost-Builder-Erweiterungen — WithReferenceIf / WaitForIf / WithExplicitStartIf, typisierte Umgebungsvariablen aus Konfigurationsobjekten, HTTPS-Dev-Cert-Anbindung, Docker-Guards, GitHub-Source-Ressourcen und npm-App-Erkennung.
Nextended.Aspire.Hosting.SupabaseDer komplette Supabase-Stack — Postgres, Auth (GoTrue), REST, Realtime, Storage, Studio, Kong und Edge Functions — als eine kombinierbare Aspire-Ressource.Supabase.AppHost
Nextended.Aspire.Hosting.N8nDie Workflow-Automatisierung n8n als Aspire-Ressource — mit Postgres-Persistenz, Workflow-Import und typisiertem Client zum Auslösen von Workflows aus .NET.N8n.AppHost
Nextended.Aspire.Hosting.GrafanaGrafana, Prometheus, Loki, Tempo, Promtail, cAdvisor, postgres_exporter und den OpenTelemetry Collector als kombinierbare Ressourcen mit automatisch bereitgestellten Datenquellen.Grafana.AppHost
Nextended.Aspire.Hosting.WebDataStudioWebDataStudio — ein Browser-Datenbankstudio für PostgreSQL, MySQL, SQL Server, SQLite, Oracle, DuckDB, ClickHouse, MongoDB und Redis — verdrahtet mit den Datenbanken Ihres Stacks, mit Konten und Rollen, optionalem SQL-Assistenten und einem MCP-Endpunkt für KI-Agenten.WebDataStudio.AppHost
Nextended.Aspire.Hosting.AspireUIAspireUI — der visuelle AppHost-Builder — als Ressource im eigenen Aspire-Stack, mit optional vorangelegtem Admin-Benutzer und einem Starter-Stack aus Ihren Projektpfaden.AspireUI.AppHost
Nextended.Aspire.Hosting.LocalAISelbst gehostete, OpenAI-kompatible multimodale KI — Bildgenerierung, Text-to-Speech, Speech-to-Text und Video — mit Galerie-Modellverwaltung, GPU-Unterstützung und Open WebUI.AiStack.AppHost
Nextended.Aspire.Hosting.PhpPHP-Endpunkte im Aspire-Stack betreiben — ein docroot-Ordner oder ein einzelnes Router-Skript über PHPs eingebauten Webserver, mit php.ini-Einstellungen als Fluent-Optionen.Php.AppHost

Die Projektübersicht enthält zusätzlich Zielframeworks, Plattformen, Abhängigkeiten und den Abhängigkeitsgraphen.

Schnellstart

bash
dotnet add package Nextended.Core
csharp
using Nextended.Core.Extensions;
using Nextended.Core.Types;
using Nextended.Core.DeepClone;

// Objekt-Mapping — ohne Profile, ohne Konfiguration
var userDto = user.MapTo<UserDto>();
var userDtos = users.MapElementsTo<UserDto>();

// Deep Clone, Referenzen bleiben erhalten
var copy = order.CloneDeep();

// Typen, die ihre Bedeutung mitbringen
var price = new Money(99.99m, Currency.USD);
var due   = Date.Today.AddDays(30);   // ein Datum, ohne Zeitanteil

// Extension Methods
"hello world".ToPascalCase();     // "HelloWorld"
"hello world".ToCamel();          // "helloWorld"
"MyClassName".SplitByUpperCase(); // "My Class Name"
DateTime.Today.AddWeekDays(5);    // überspringt Wochenenden

Ausführbare Beispiele

Sprachstand

Vollständig auf Deutsch: Startseite, Projektübersicht, Installation, Architektur, typische Anwendungsfälle und die Referenz zu Response-Filtern. Die übrigen Paketseiten sind deutsche Seiten mit Beschreibung, Installation, Frameworks, Plattform, Abhängigkeiten und Beispiel; für die Tiefenreferenz verweisen sie auf die englische Fassung. Die API-Referenz ist noch englisch.

Migration von nExt

Die Sammlung erschien früher als nExt. Die Namespaces heißen jetzt Nextended.*, die API ist ansonsten quellkompatibel. Siehe den Migrationsleitfaden (englisch). Das Altpaket nExt.Core wird nicht mehr gepflegt.