Is it possible to use the wizard layout when using Spark in the form of a direct use example

Can I use a master layout when using Spark in the form of a direct-use sample? I tried using both in my layout with my layout in the same folder as the calling layout, and I also tried to add a master layout as a template for SparkViewDescriptor in the code below?

    public class DefaultMessageBuilder : MessageBuilder 
    { 
        private readonly ISparkViewEngine _engine; 
        public DefaultMessageBuilder() 
        { 
            var settings = new SparkSettings() 
                .SetDebug(true) 
                .SetPageBaseType(typeof(TemplateBase)) 
                .AddNamespace("System.Collections.Generic"); 
            var templates = new VirtualPathProviderViewFolder("~/Templates"); 
            _engine = new SparkViewEngine(settings) { ViewFolder = templates }; 
        } 
        public override void Transform(string templateName, object data, TextWriter output) 
        { 
            var descriptor = new SparkViewDescriptor() 
                .AddTemplate("Master.spark") 
                .AddTemplate(templateName + ".spark"); 
            var view = (TemplateBase)_engine.CreateInstance(descriptor); 
            try 
            { 
                view.ViewData = new ViewDataDictionary(data); 
                view.RenderView(output); 
            } 
            finally 
            { 
                _engine.ReleaseInstance(view); 
            } 
        } 
    } 
+3
source share
2 answers

This is similar to my particular situation, I want to have a standard header and footer, which I can use, for example: <use file="~/Layouts/Master" />.

0
source

, , SparkViewDescriptor, . , .

"viewPage1.spark", - "masterPage1.spark".

new SparkViewDescriptor().AddTemplate("viewPage1.spark").AddTemplate("viewPage.spark").AddTemplate("masterPage.spark").AddTemplate("masterPage1.spark") 

, . , -, <use master=""/>, . , , SparkViewDescriptor , MVC.

+4

Source: https://habr.com/ru/post/1722916/


All Articles