ASP.NET MVC:突出显示当前 link

ASP.NET MVC: Highlighting current link

我需要在菜单中突出显示当前 link,但是 HTML 的结构如下所示:

<li class="active">
    <a href='@Url.Action("MainPage", "Ticket")'>
        <i class="fa  fa-fw fa-home"></i>
        HomePage
    </a>
</li>

我知道有很多不同的解决方案 (+, +):

public static MvcHtmlString MenuLink(
            this HtmlHelper helper,
            string text, string action, string controller)
        {
            var routeData = helper.ViewContext.RouteData.Values;
            var currentController = routeData["controller"];
            var currentAction = routeData["action"];

            if (String.Equals(action, currentAction as string,
                      StringComparison.OrdinalIgnoreCase)
                &&
               String.Equals(controller, currentController as string,
                       StringComparison.OrdinalIgnoreCase))
            {
                return helper.ActionLink(
                    text, action, controller, null,
                    new { @class = "active" }
                    );
            }
            return helper.ActionLink(text, action, controller);
        }

但是我的 HTML 结构有点不同。
我该怎么做?
有什么想法吗?

最后我以这种方式更改了代码并且它起作用了:(感谢@Stephen Muecke)

public static MvcHtmlString MenuLink(
            this HtmlHelper helper,
            string content, string action, string controller)
        {
            var routeData = helper.ViewContext.RouteData.Values;
            var currentController = routeData["controller"];
            var currentAction = routeData["action"];

            var builder = new TagBuilder("li")
            {
                InnerHtml = content
            };
            if (String.Equals(action, currentAction as string,
                      StringComparison.OrdinalIgnoreCase)
                &&
               String.Equals(controller, currentController as string,
                       StringComparison.OrdinalIgnoreCase))
            {
                builder.AddCssClass("active");
                return MvcHtmlString.Create(builder.ToString());
            }
            return MvcHtmlString.Create(builder.ToString());
        }