分页助手asp.net mvc

cs0*_*815 5 asp.net-mvc paging

我已经实现了一个分页html助手(改编自史蒂文桑德森的书).这是当前的代码:

public static string PageLinks(this HtmlHelper html,int currentPage,int totalPages,Func pageUrl){StringBuilder result = new StringBuilder();

        for (int i = 1; i <= totalPages; i++)
        {
            TagBuilder tag = new TagBuilder("a");
            tag.MergeAttribute("href", pageUrl(i));
            tag.InnerHtml = i.ToString();
            if (i == currentPage)
                tag.AddCssClass("selectedPage");
            result.AppendLine(tag.ToString());
        }

        return result.ToString();
    }
Run Code Online (Sandbox Code Playgroud)

这会产生一系列链接到我的项目的每个页面.如果有很多页面,这可能有点压倒性.我正在寻找一个类似的实现,产生一些不那么压倒性的东西:

其中6是当前页面.我确信有人必须实施类似的东西...在我必须重新实施轮子之前.

谢谢.

基督教