La creación y el manejo de plantillas en C# se pueden lograr utilizando bibliotecas como RazorEngine, que permite generar documentos basados en plantillas. A continuación, te mostraré cómo puedes usar RazorEngine para crear y manejar plantillas en C#.
Primero, debes instalar el paquete NuGet RazorEngine
en tu proyecto. Puedes hacerlo utilizando NuGet Package Manager o ejecutando el siguiente comando en la Consola del Administrador de Paquetes: Install-Package RazorEngine
Una vez que hayas instalado RazorEngine, puedes crear y manejar plantillas como se muestra a continuación:
using RazorEngine;
using RazorEngine.Templating;
using System;
using System.Dynamic;
class Program
{
static void Main()
{
// Define un modelo de datos
dynamic model = new ExpandoObject();
model.FirstName = "John";
model.LastName = "Doe";
// Define una plantilla Razor
string template = "Hello, @Model.FirstName @Model.LastName!";
// Compila la plantilla
string result = Engine.Razor.RunCompile(template, "templateKey", null, model);
// Imprime el resultado
Console.WriteLine(result);
}
}
En este ejemplo:
- Creamos un modelo de datos dinámico
model
utilizandoExpandoObject
, pero puedes utilizar un modelo personalizado si lo prefieres. - Definimos una plantilla Razor en la variable
template
. Puedes usar el marcador@Model
para acceder a las propiedades del modelo en la plantilla. - Compilamos la plantilla utilizando
Engine.Razor.RunCompile
, especificando la plantilla, una clave única («templateKey» en este caso),null
para el modelo y el modelo de datosmodel
. - Finalmente, imprimimos el resultado, que contendrá el texto «Hello, John Doe!».
Este es un ejemplo básico de cómo crear y manejar plantillas en C# utilizando RazorEngine. Puedes personalizar las plantillas y los modelos según tus necesidades específicas. Además, puedes almacenar tus plantillas en archivos externos y cargarlas dinámicamente si es necesario.