Exemplo n.º 1
0
        public IViewEngine CreateModulesViewEngine(CreateModulesViewEngineParams parameters)
        {
            var areaFormats = new[]
            {
                "~/Core/{2}/Views/{1}/{0}.liquid",
                "~/Modules/{2}/Views/{1}/{0}.liquid",
                "~/Themes/{2}/Views/{1}/{0}.liquid",
            };

            var universalFormats = parameters.VirtualPaths
                                   .SelectMany(
                x => new[]
            {
                x + "/Views/{0}.liquid",
            })
                                   .ToArray();

            var viewEngine = new LiquidViewEngine(_liquidTemplateServiceWork)
            {
                MasterLocationFormats          = DisabledFormats,
                ViewLocationFormats            = universalFormats,
                PartialViewLocationFormats     = universalFormats,
                AreaMasterLocationFormats      = DisabledFormats,
                AreaViewLocationFormats        = areaFormats,
                AreaPartialViewLocationFormats = areaFormats,
            };

            return(viewEngine);
        }
Exemplo n.º 2
0
        public IViewEngine CreateThemeViewEngine(CreateThemeViewEngineParams parameters)
        {
            var partialViewLocationFormats = new[]
            {
                parameters.VirtualPath + "/Views/{0}.liquid"
            };

            var areaPartialViewLocationFormats = new[]
            {
                parameters.VirtualPath + "/Views/{2}/{1}/{0}.liquid"
            };

            var viewEngine = new LiquidViewEngine(_liquidTemplateServiceWork)
            {
                MasterLocationFormats          = DisabledFormats,
                ViewLocationFormats            = DisabledFormats,
                PartialViewLocationFormats     = partialViewLocationFormats,
                AreaMasterLocationFormats      = DisabledFormats,
                AreaViewLocationFormats        = DisabledFormats,
                AreaPartialViewLocationFormats = areaPartialViewLocationFormats,
                ViewLocationCache = new ThemeViewLocationCache(parameters.VirtualPath),
            };

            return(viewEngine);
        }
        public IViewEngine CreateModulesViewEngine(CreateModulesViewEngineParams parameters)
        {
            // Below three lines copied from RazorViewEngineProvider. Must revisit if that class changes.
            // TBD: It would probably be better to determined the area deterministically from the module of the controller,
            // not by trial and error.
            var areaFormats = parameters.ExtensionLocations.Select(location => location + "/{2}/Views/{1}/{0}.liquid").ToArray();

            var universalFormats = parameters.VirtualPaths
                .SelectMany(
                    x => new[]
                        {
                            x + "/Views/{0}.liquid",
                        })
                .ToArray();

            var viewEngine = new LiquidViewEngine(_liquidTemplateServiceWork)
            {
                MasterLocationFormats = DisabledFormats,
                ViewLocationFormats = universalFormats,
                PartialViewLocationFormats = universalFormats,
                AreaMasterLocationFormats = DisabledFormats,
                AreaViewLocationFormats = areaFormats,
                AreaPartialViewLocationFormats = areaFormats,
            };

            return viewEngine;
        }
        public IViewEngine CreateModulesViewEngine(CreateModulesViewEngineParams parameters)
        {
            var areaFormats = new[]
            {
                "~/Core/{2}/Views/{1}/{0}.liquid",
                "~/Modules/{2}/Views/{1}/{0}.liquid",
                "~/Themes/{2}/Views/{1}/{0}.liquid",
            };

            var universalFormats = parameters.VirtualPaths
                .SelectMany(
                    x => new[]
                        {
                            x + "/Views/{0}.liquid",
                        })
                .ToArray();

            var viewEngine = new LiquidViewEngine(_liquidTemplateServiceWork)
            {
                MasterLocationFormats = DisabledFormats,
                ViewLocationFormats = universalFormats,
                PartialViewLocationFormats = universalFormats,
                AreaMasterLocationFormats = DisabledFormats,
                AreaViewLocationFormats = areaFormats,
                AreaPartialViewLocationFormats = areaFormats,
            };

            return viewEngine;
        }
        public IViewEngine CreateThemeViewEngine(CreateThemeViewEngineParams parameters)
        {
            var partialViewLocationFormats = new[]
            {
                parameters.VirtualPath + "/Views/{0}.liquid"
            };

            var areaPartialViewLocationFormats = new[]
            {
                parameters.VirtualPath + "/Views/{2}/{1}/{0}.liquid"
            };

            var viewEngine = new LiquidViewEngine(_liquidTemplateServiceWork)
            {
                MasterLocationFormats = DisabledFormats,
                ViewLocationFormats = DisabledFormats,
                PartialViewLocationFormats = partialViewLocationFormats,
                AreaMasterLocationFormats = DisabledFormats,
                AreaViewLocationFormats = DisabledFormats,
                AreaPartialViewLocationFormats = areaPartialViewLocationFormats,
                ViewLocationCache = new ThemeViewLocationCache(parameters.VirtualPath),
            };

            return viewEngine;
        }
Exemplo n.º 6
0
        public IViewEngine CreateModulesViewEngine(CreateModulesViewEngineParams parameters)
        {
            // Below three lines copied from RazorViewEngineProvider. Must revisit if that class changes.
            // TBD: It would probably be better to determined the area deterministically from the module of the controller,
            // not by trial and error.
            var areaFormats = parameters.ExtensionLocations.Select(location => location + "/{2}/Views/{1}/{0}.liquid").ToArray();

            var universalFormats = parameters.VirtualPaths
                                   .SelectMany(
                x => new[]
            {
                x + "/Views/{0}.liquid",
            })
                                   .ToArray();

            var viewEngine = new LiquidViewEngine(_liquidTemplateServiceWork)
            {
                MasterLocationFormats          = DisabledFormats,
                ViewLocationFormats            = universalFormats,
                PartialViewLocationFormats     = universalFormats,
                AreaMasterLocationFormats      = DisabledFormats,
                AreaViewLocationFormats        = areaFormats,
                AreaPartialViewLocationFormats = areaFormats,
            };

            return(viewEngine);
        }