I've seen a lot of people that like using the NHaml View Engine in ASP.NET MVC, but I'm wondering if NHaml can be used as a general purpose templating engine in .NET ? I'd like to use NHaml from a Console application, or to generate HTML email templates, outside of the ASP MVC View Engine environment. Is this possible? I haven't found many code examples anywhere showing how to do this. Thanks!
Can NHaml be used as a general purpose template engine? (outside of MVC)
594 Views Asked by Kevin Southworth At
2
There are 2 best solutions below
0
On
Latest NHaml makes it easier:
var te = XmlConfigurator.GetTemplateEngine("nhaml.config");
var ct = te.GetCompiledTemplate(new FileViewSource(new FileInfo("period.nhaml")), typeof(Template));
var template = ct.CreateTemplate();
var viewData = new Dictionary<string,object>();
template.ViewData = viewData;
template.Render(writer);
Yes, it can be used without ASP.Net MVC. I use it for my own web server (but that doesn't mean that you HAVE to use it with web servers).
Check out how I use it here: http://webserver.codeplex.com/SourceControl/changeset/view/50874#671672
What you do in short is something like this: