簡體   English   中英

MVC 6中的HtmlHelpers

[英]HtmlHelpers in MVC 6

我正在嘗試將此代碼移植到mvc 6,可以得到任何幫助,代碼可以編譯,但該方法在我對@Html.IsActive視圖中不可用。

using Microsoft.AspNet.Mvc.Rendering;

namespace Blah.Web.Helpers
{
    public static class HtmlHelpers
    {

        public static string IsActive(this HtmlHelper htmlHelper, string controller, string action)
        {
            var routeData = htmlHelper.ViewContext.RouteData;

            var routeAction = routeData.Values["action"].ToString();
            var routeController = routeData.Values["controller"].ToString();

            var returnActive = (controller == routeController && action == routeAction);

            return returnActive ? "active" : "";
        }

    }
}

在視圖中,我引用了命名空間:

@using Blah.Web.Helpers;

在方法簽名中, HtmlHelper應該是IHtmlHelper

請參閱下面的示例

namespace Blah.Web.Helpers
{
    public static class HtmlHelpers
    {
        public static string IsActive(this IHtmlHelper htmlHelper, string controller, string action)
        {
            var routeData = htmlHelper.ViewContext.RouteData;

            var routeAction = routeData.Values["action"].ToString();
            var routeController = routeData.Values["controller"].ToString();

            return (controller == routeController && action == routeAction) ? "active" : "";
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM