Requisitos: No ASP.NET Core MVC, visualizar o código html produzido pelo template é, na verdade, o resultado gerado pelo Template Engine, que é uma tecnologia que combina arquivos template (incluindo conteúdo estático e marcadores dinâmicos) com dados (variáveis ou objetos) para gerar o documento final. É amplamente utilizado em várias áreas, como desenvolvimento web, sistema de e-mail, geração de relatórios, geração de perfis, etc.
Motor de Templates em C#: RazorEngine(O código não é atualizado há 8 anos, e o pacote mais recente ainda é de 2017)、RazorLight Motor de Templates Java:Folha de tomilho、FreeMarker
RazorLight
Use o Razor para construir templates a partir de arquivos/recursos incorporados/strings/bancos de dados, ou fontes personalizadas fora ASP.NET MVC. Sem dependências redundantes e soluções alternativas, desempenho excelente e suporte. NET Standard 2.0 e . NET Core 3.0。
Endereço do código-fonte:O login do hiperlink está visível.
Teste no console
Baseado no projeto do console .NET 8. Primeiro, o pacote RazorLight é referenciado no projeto, da seguinte forma:
Você também precisa adicionar a configuração PreserveCompilationContext, da seguinte forma:
Caso contrário, um erro é reportado:Exceção não resolvida. RazorLight.RazorLightException: Não é possível carregar referência de metadados do conjunto de entrada. Certifique-se de que o PreserveCompilationContext esteja definido como true no arquivo *.csproj
Neste artigo, usamos o método de incorporar recursos para adicionar um arquivo modelo, criar uma nova pasta de e-mail e criar um novo arquivo Send.cshtml, conforme segue:
O código é o seguinte:
Testava uma string normal, percorria a coleção e adicionava conteúdo HTML, como mostrado na figura a seguir:
Se você quiser desativar a codificação para todo o documento - basta definir a variável "DisableEncoding" como true, o código é o seguinte:
(Fim) |