コード例 #1
0
        public ActionResult Show(string page)
        {
            var pageUrl = '/' + page;
            var service = IoC.Resolve<IDynamicPageService>();

            var pageEntity = service.GetPageByPageUrl(CurrentProfile.ClientId, pageUrl);
            if (pageEntity == null)
            {
                return View("~/Views/Shared/error.cshtml");
            }

            // Resolve Any dynamic controls
            var resolvedContent = ResolveDynamicControlsInPageContent(pageEntity.PageContent);
            var model = new PageModel();
            model.InjectFrom(pageEntity);
            model.PageContent = resolvedContent;

            // dynamic layout
            ViewBag.ParentLayout = model.IsHomePage
                ? "~/Views/Shared/_Home.cshtml"
                : "~/Views/Shared/_Primary.cshtml";

            return View(model);
        }