Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

README.md

MbSoftLab.TemplateEngine.Core - Dokumentation

Version: 1.0.8-preview2
Commit-Referenz: 5c37e68
Dokumentations-Stand: Dezember 2025


Willkommen

Willkommen zur offiziellen Dokumentation der MbSoftLab.TemplateEngine.Core Bibliothek - einer leistungsstarken und flexiblen Template-Engine für .NET 8.0.

Diese Bibliothek bietet zwei verschiedene Ansätze zur Template-Verarbeitung:

  • TemplateEngine – Schnell und einfach für String-basierte Templates
  • RazorTemplateEngine – Mächtig und flexibel für komplexe HTML-Templates mit Razor-Syntax (optional, verfügbar nach Installation von MbSoftLab.TemplateEngine.Core.Razor)

📚 Dokumentations-Struktur

Detaillierte technische Übersicht der Bibliothek:

  • Gesamt-Architektur und Komponenten-Diagramme
  • Klassen-Hierarchie und Beziehungen
  • Datenfluss und Verarbeitungs-Pipelines
  • Design-Entscheidungen und Begründungen
  • Erweiterungspunkte für zukünftige Features

Für wen: Entwickler, die die interne Struktur verstehen wollen

Vollständige API-Referenz:

  • Alle öffentlichen Klassen und Interfaces
  • Methoden-Signaturen und Parameter
  • Eigenschaften und deren Verwendung
  • Template-Syntax für beide Engine-Typen
  • Unterstützte Datentypen
  • Best Practices und Fehlerbehandlung

Für wen: Entwickler, die die API verwenden

Praktische Codebeispiele:

  • Schnellstart-Anleitung
  • Einfache bis fortgeschrittene Beispiele
  • Razor-Template-Beispiele
  • Real-World-Szenarien (E-Mail, Reports, Konfigurationen)
  • Tipps und Tricks für effiziente Nutzung

Für wen: Einsteiger und Entwickler, die konkrete Anwendungsfälle suchen

Informationen für Contributors:

  • Entwicklungsumgebung einrichten
  • Projekt-Struktur und Organisation
  • Build, Test und Debugging
  • Code-Konventionen und Standards
  • Contribution Guidelines
  • CI/CD Pipeline-Details

Für wen: Contributors und Maintainer


🚀 Schnellstart

Installation

# NuGet Package Manager
Install-Package MbSoftLab.TemplateEngine.Core

# .NET CLI
dotnet add package MbSoftLab.TemplateEngine.Core

Optional: Razor-Unterstützung installieren

dotnet add package MbSoftLab.TemplateEngine.Core.Razor

Erstes Beispiel

using MbSoftLab.TemplateEngine.Core;

// Datenmodell
var person = new { FirstName = "Max", LastName = "Mustermann" };

// Template
string template = "Hallo ${FirstName} ${LastName}!";

// Template-Engine
var engine = new TemplateEngine(person, template);

// String erstellen
string result = engine.CreateStringFromTemplate();
// Output: "Hallo Max Mustermann!"

Mehr Beispiele finden Sie in der Beispiele-Dokumentation.


📖 Wichtige Dokumente

Komplette Versions-Historie mit allen Änderungen, neuen Features und Bugfixes.

Detaillierte Release-Informationen für die aktuelle Version mit Migration-Guides und bekannten Einschränkungen.

Projekt-Übersicht mit grundlegenden Informationen und Links.


🎯 Häufige Anwendungsfälle

1. Einfache String-Templates

Für Platzhalter-Ersetzungen in Konfigurationen, E-Mails oder einfachen Texten.

var engine = new TemplateEngine<Customer>(customer, "Hallo ${Name}!");

→ Siehe Einfache Beispiele

2. Komplexe HTML-Templates (optional)

Für dynamische HTML-Generierung mit Schleifen, Bedingungen und verschachtelten Objekten.

// Razor steht erst nach Installation von MbSoftLab.TemplateEngine.Core.Razor zur Verfügung
var engine = new RazorTemplateEngine<Person>();
engine.TemplateString = "@foreach(var item in Model.Items) { <li>@item</li> }";

→ Siehe Razor-Templates

3. Report-Generierung

Für automatisierte Berichte aus Datenmodellen.

→ Siehe Praxis-Szenarien

4. Code-Generierung

Für Template-basierte Code- oder Konfigurations-Generierung.

→ Siehe Entwickler-Leitfaden


💡 Kernkonzepte

Template-Engine (String-basiert)

  • Platzhalter: ${PropertyName} oder ${MethodName()}
  • Custom Delimiters: Konfigurierbar
  • NULL-Behandlung: Anpassbarer NULL-String
  • Formatierung: Kultur-abhängig für Zahlen und Datum
  • Performance: Sehr schnell für einfache Templates

RazorTemplateEngine (Razor-basiert)

  • Razor-Syntax: Volle C#-Unterstützung
  • Schleifen: @foreach, @for
  • Bedingungen: @if, @switch
  • Collections: Listen und Arrays unterstützt
  • Kompilierung: Templates werden kompiliert für bessere Performance

🔧 Funktions-Übersicht

Unterstützte Datentypen (TemplateEngine)

✅ String, Byte, Short, Int, Long, Decimal, Double, DateTime, Boolean
❌ Collections, Custom Classes (→ Nutzen Sie RazorTemplateEngine)

Features

  • Property-basierte Platzhalter
  • Methoden-Aufrufe (parameterlos)
  • Custom Delimiters
  • NULL-Wert-Konfiguration
  • Kultur-spezifische Formatierung
  • JSON-Deserialisierung
  • Template aus Datei laden
  • Razor-Template-Unterstützung
  • Generische Type-Safety
  • Interface-basiertes Design
  • Konfigurations-Objekt

📊 Versions-Informationen

Aktuelle Version: 1.0.8-preview2

Highlights:

  • Razor-Template-Engine für komplexe HTML-Templates
  • Erweiterte Methoden-Aufrufe in Templates
  • Verbesserter Build- und Release-Prozess
  • Umfassende Dokumentation

Breaking Changes: Keine (abwärtskompatibel)

Siehe RELEASENOTES.md für Details.


🤝 Contribution

Wir freuen uns über Beiträge! Bitte lesen Sie den Entwickler-Leitfaden für:

  • Branch-Strategie
  • Commit-Konventionen
  • Pull Request Process
  • Code-Standards

📝 Support und Feedback

Issues melden

GitHub Issues

Fragen stellen

GitHub Discussions

Code-Qualität prüfen

CodeFactor


📦 Links


Letzte Aktualisierung: Dezember 2025
Commit-Referenz: 5c37e68


Diese Dokumentation wurde automatisch generiert und wird kontinuierlich aktualisiert.