Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- using Spark;
- using Spark.FileSystem;
- using Spark.Web.Mvc;
- using System.Web.Mvc;
- using System.IO;
- namespace Indev.Ciel.Web.Services
- {
- public class SparkOnTheFly
- {
- public static string Render(string sTemplate, object data = null)
- {
- var writer = new StringWriter();
- var settings = new SparkSettings()
- .SetPageBaseType(typeof(Indev.Ciel.Web.Views.BaseView))
- .SetDebug(true);
- var templates = new InMemoryViewFolder();
- var engine = new SparkViewEngine(settings)
- {
- ViewFolder = templates
- };
- templates.Add("sample.spark", @sTemplate);
- var descriptor = new SparkViewDescriptor()
- .AddTemplate("sample.spark");
- var view = (Views.BaseView)engine.CreateInstance(descriptor);
- try
- {
- if (data != null)
- {
- view.ViewData = new ViewDataDictionary(data);
- }
- view.RenderView(writer);
- }
- finally
- {
- engine.ReleaseInstance(view);
- }
- return writer.ToString();
- }
- }
- }
Add Comment
Please, Sign In to add comment