Exemplo n.º 1
0
 public static void PropagateSection(this WebViewPage page, string sectionName)
 {
     if (page.IsSectionDefined(sectionName))
     {
         page.DefineSection(sectionName, delegate() { page.Write(page.RenderSection(sectionName)); });
     }
 }
Exemplo n.º 2
0
        //public static MvcLinksExtension<TModel> Links<TModel>(this HtmlHelper<TModel> helper)
        //{
        //    return new MvcLinksExtension<TModel>(helper);
        //}

        //public static MvcPanelExtension<TModel> Panel<TModel>(this HtmlHelper<TModel> helper)
        //{
        //    return new MvcPanelExtension<TModel>(helper);
        //}

        /// <summary>
        ///     Liefert die PageId für die aktuell anzuzeigende Seite.
        /// </summary>
        /// <param name="htmlHelper"></param>
        /// <param name="view">Instanz der View.</param>
        /// <returns></returns>
        public static string GetPageId(this HtmlHelper htmlHelper, WebViewPage view)
        {
            if (view.IsSectionDefined("PageId"))
            {
                return(view.RenderSection("PageId").ToString().Trim());
            }

            RouteData routeData = htmlHelper.ViewContext.HttpContext.Request.RequestContext.RouteData;
            string    area      = "NoArea";

            if (routeData.DataTokens.ContainsKey("area"))
            {
                area = routeData.DataTokens["area"].ToString();
            }
            string controller = "Home";

            if (routeData.Values.ContainsKey("controller"))
            {
                controller = routeData.Values["controller"].ToString();
            }

            string action = "Index";

            if (routeData.Values.ContainsKey("action"))
            {
                action = routeData.Values["action"].ToString();
            }

            return(area + "_" + controller + "_" + action);
        }
Exemplo n.º 3
0
        public static HelperResult SafeRenderSection <TModel>(this HtmlHelper <TModel> helper, string name, bool required = false)
        {
            WebViewPage PAge = helper.ViewDataContainer as WebViewPage;

            if (PAge.IsSectionDefined(name))
            {
                return(PAge.RenderSection(name, required));
            }
            return(null);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 如果@section未定义,则渲染部分页
        /// </summary>
        /// <typeparam name="TModel"></typeparam>
        /// <param name="page"></param>
        /// <param name="name"></param>
        /// <returns></returns>
        public static IHtmlString RenderSectionOrPartial <TModel>(this WebViewPage <TModel> page, string name)
        {
            var renderSection = page.RenderSection(name, false);

            if (renderSection != null)
            {
                return(renderSection);
            }
            return(page.Html.Partial(name));
        }
Exemplo n.º 5
0
        /// <summary>
        /// 如果@section未定义,则渲染部分页
        /// </summary>
        /// <typeparam name="TModel"></typeparam>
        /// <param name="page"></param>
        /// <param name="name"></param>
        /// <returns></returns>
        public static IHtmlString RenderSectionOrPartial <TModel>(this WebViewPage <TModel> page, string name)
        {
            //Unify/_Breadcrumbs => Unify_Breadcrumbs
            var fixSectionName = name.Replace("/", "");
            var renderSection  = page.RenderSection(fixSectionName, false);

            if (renderSection != null)
            {
                return(renderSection);
            }
            return(page.Html.Partial(name));
        }