Esempio n. 1
0
 public override void WriteToResponse(HttpContextBase context)
 {
     var path = context.Server.MapPath(string.Format("/Views/{0}.haml", templateName));
     var engine = new TemplateEngine();
     var compiledTemplate = engine.Compile(path, typeof(NSinatraNHamlView));
     var instance = (NSinatraNHamlView)compiledTemplate.CreateInstance();
     instance.ViewData = viewData;
     instance.Render(context.Response.Output);
 }
        public HamlTemplateFactory(string baseTemplatePath)
        {
            var templateOptions = new TemplateOptions();
            templateOptions.EncodeHtml = false;
            templateOptions.AutoRecompile = true;
            templateOptions.IndentSize = 2;
            templateOptions.TemplateBaseType = typeof(HamlTemplate);

            var fileTemplateResolver = new FileTemplateContentProvider();
            fileTemplateResolver.PathSources = new [] { baseTemplatePath }.ToList();

            this.templateEngine = new TemplateEngine(templateOptions) { TemplateContentProvider = fileTemplateResolver };
        }
Esempio n. 3
0
        public TemplateResponse(string viewPath)
        {
            _viewPath = viewPath;
            _templateEngine = new TemplateEngine();

            // TODO: Probably going to need this at some point; figure out why :-P
            //_templateEngine.Options.AddUsing("System.Web");
            //_templateEngine.Options.AddUsing("System.Web.Routing");
            //_templateEngine.Options.AddUsing("NHaml");

            //foreach (var referencedAssembly in typeof(Resource).Assembly.GetReferencedAssemblies())
            //{
            //    _templateEngine.Options.AddReference(Assembly.Load(referencedAssembly).Location);
            //}
        }