Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using Spark View Engine in a stand alone application

My client application needs to generate HTML. I'd like to use a template/view engine solution like Spark, but I'm not sure whether Spark can be used outside of an ASP.NET application. Does anyone know of any samples or documentation about using Spark in this way?

(If you know of other view engine solutions that can be used stand-alone, I'd be curious to hear about those, too.)

like image 597
dthrasher Avatar asked Oct 20 '09 21:10

dthrasher


1 Answers

In addition to the other examples, I found a simple one in the Spark source itself. The Xpark project is a command-line application for transforming XML using Spark. Louis DeJardin, the creator of Spark, described how Xpark works on his blog.

The relevant code snippets are:

    // Create an engine using the templates path as the root location
    // as well as the shared location
    var engine = new SparkViewEngine
        {
             DefaultPageBaseType = typeof(SparkView).FullName,
             ViewFolder = viewFolder.Append(new SubViewFolder(viewFolder, "Shared"))
        };

    SparkView view;

    // compile and instantiate the template
    view = (SparkView)engine.CreateInstance(
                          new SparkViewDescriptor()
                              .AddTemplate(templateName));

    // render the view to stdout
    using (var writer = new StreamWriter(Console.OpenStandardOutput(), Encoding.UTF8))
    {
        view.RenderView(writer);
    }

This was enough to get me pointed in the right direction. But I'll definitely dive into the other examples as well.

like image 170
dthrasher Avatar answered Oct 08 '22 20:10

dthrasher