Vereisten: In ASP.NET Core MVC is de weergave van de html-code die door het sjabloon wordt uitgevoerd eigenlijk het resultaat dat wordt weergegeven door de Template Engine, een technologie die sjabloonbestanden (inclusief statische inhoud en dynamische placeholders) combineert met data (variabelen of objecten) om het uiteindelijke document te genereren. Het wordt veel gebruikt in diverse vakgebieden zoals webontwikkeling, mailsysteem, rapportagegeneratie, profielgeneratie, enzovoort.
C# Sjabloon-engine: RazorEngine(De code is al 8 jaar niet bijgewerkt en het nieuwste pakket is nog steeds uit 2017)、RazorLight Java Template Engine:Thymeleaf、FreeMarker
RazorLight
Gebruik Razor om sjablonen te bouwen uit bestanden/embedded resources/strings/databases, of aangepaste bronnen buiten ASP.NET MVC. Geen redundante afhankelijkheden en workarounds, uitstekende prestaties en ondersteuning. NET Standard 2.0 en . NET Core 3.0。
Broncode-adres:De hyperlink-login is zichtbaar.
Consoletest
Gebaseerd op het .NET 8 consoleproject. Ten eerste wordt in het project naar het RazorLight-pakket verwezen, als volgt:
Je moet ook de PreserveCompilationContext-configuratie toevoegen, als volgt:
Anders wordt een fout gemeld:Onbehandelde uitzondering. RazorLight.RazorLightException: Kan geen metadata-referentie laden vanuit de entry assembly. Zorg ervoor dat PreserveCompilationContext op true is gezet in het *.csproj-bestand
In dit artikel gebruiken we de methode van het inbedden van bronnen om een sjabloonbestand toe te voegen, een nieuwe e-mailmap aan te maken en een nieuw Send.cshtml-bestand aan te maken, als volgt:
De code is als volgt:
Een normale string getest, door de collectie geloopt en HTML-inhoud toegevoegd, zoals weergegeven in de volgende figuur:
Als je codering voor het hele document wilt uitschakelen - zet dan gewoon de variabele "DisableEncoding" op true, de code is als volgt:
(Einde) |