2009-10-20 19 views
15

Mi aplicación cliente necesita generar HTML. Me gustaría usar una solución de motor de plantilla/vista como Spark, pero no estoy seguro de si Spark se puede usar fuera de una aplicación ASP.NET. ¿Alguien sabe de alguna muestra o documentación sobre el uso de Spark de esta manera?Uso de Spark View Engine en una aplicación independiente

(Si usted sabe de otras soluciones de vista del motor que se pueden utilizar independiente, me gustaría ser curioso oír hablar de ellos, también.)

Respuesta

14

Además de los otros ejemplos, encontré un sencillo en la propia fuente de chispa. El proyecto Xpark es una aplicación de línea de comandos para transformar XML utilizando Spark. Louis DeJardin, el creador de Spark, describió how Xpark works en su blog.

Los fragmentos de código relevantes son:

// 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); 
    } 

Esto fue suficiente para que me señaló en la dirección correcta. Pero definitivamente voy a sumergirme en otros ejemplos también.

1

Claro. Probablemente el ejemplo más completo sea mirar el código del motor Spark view para ASP.NET MVC.

También está bajo prueba, por lo que leer las pruebas debería darle un muy buen punto de partida.

3

Debe consultar Docu, este proyecto utiliza el motor de vista Spark para generar documentación HTML (no desde una aplicación web ASP.NET).

Sin embargo, se advirtió, no sé si el proyecto está usando la versión 1.0 de Spark, podría ser una compilación anterior.

http://docu.jagregory.com/

http://github.com/jagregory/docu

1

Si ayuda a alguien más, tenía que lograr algo similar con el motor Spark fuera de un proyecto MVC.
Creé una muestra (muy simplificada) del proyecto C# de usar el motor Spark view para realizar operaciones simples de plantilla. Tal vez alguien podría utilizarlo como punto de partida/encogimiento
http://jezel.googlecode.com/files/SparkTemplateExample.zip

mayor parte de mi código de la plantilla se basa apagado de la revisión de Jonas Gauffin's C# WebServer proyecto en el que se utiliza el motor de encendido para las plantillas de forma similar.

Cuestiones relacionadas