Duplicata possible:
Est-il possible d'utiliser Razor View Engine en dehors d'asp.net
J'ai besoin de fusionner des modèles avec des données pour créer des chaînes uniques lors de l'exécution. Il a été suggéré que je regarde le moteur de vue Razor qui est fourni avec ASP.NET MVC 3. Il a l'air bien, mais je dois l'utiliser en dehors de la création de vue MVC.
Je sais que je peux utiliser directement le moteur Razor de base, mais j'ai également trouvé quelques projets qui facilitent l'utilisation directe de Razor. Comme:
Quelqu'un a-t-il des conseils sur l'utilisation de Razor en dehors de MVC en tant que moteur de modèle autonome? Avez-vous de l'expérience avec ces projets d'emballage? Existe-t-il d'autres implémentations d'hébergement Razor que je devrais étudier?
Vous pouvez jeter un oeil à article de blog suivant qui illustre comment vous pouvez utiliser le moteur de vue Razor pour rendre un modèle en chaîne.
Si vous souhaitez générer du contenu réel à partir d'un modèle de rasoir, vous pouvez utiliser RazorEngine .
Regardez RazorTemplates bibliothèque. Il est plus léger que la bibliothèque RazorEngine, il est compatible avec les threads et possède une interface minimale très agréable.
Phil Haack posté sur cette façon de le faire en utilisant une classe générée.
Vous créez un fichier .cshtml puis utilisez une extension de temps de compilation sur le fichier pour générer une classe. Ensuite, vous pouvez simplement faire ceci:
var template = new RazorTemplate {
Model = new[] {
new {Name = "Scott", Id = 1},
new {Name = "Steve", Id = 2},
new {Name = "Phil", Id = 3},
new {Name = "David", Id = 4}
}
};
Console.WriteLine(template.TransformText());
Il y a un bon article sur l'utilisation de RazorEngine: Comment créer un moteur de modèle de texte localisable à l'aide de RazorEngine
Trouvé une bibliothèque vraiment sympa par Jaap Lamfers:
Moteur de modèle Razor 2.0, prenant en charge les dispositions (sur CodeProject)
Qualités: