Asp.net mvc 具有部分视图的MVC分页

Asp.net mvc 具有部分视图的MVC分页,asp.net-mvc,paging,Asp.net Mvc,Paging,我是一个相对较新的MVC用户,很难让分页在MVC中正常工作 基本上,我有一个在局部视图中呈现的搜索结果负载(使用像这样的beginform方法): { @Html.ActionLink(item.Name,“Result/”+item.Id,“Result”) } @{if(ViewBag.HasPrevious) { @ActionLink(“,”搜索“,新建{searchString=ViewBag.query,page=ViewBag.CurrentPage+1}) } } 我的问题是>

我是一个相对较新的MVC用户,很难让分页在MVC中正常工作

基本上,我有一个在局部视图中呈现的搜索结果负载(使用像这样的beginform方法):

{

  • @Html.ActionLink(item.Name,“Result/”+item.Id,“Result”)
  • } @{if(ViewBag.HasPrevious) { @ActionLink(“,”搜索“,新建{searchString=ViewBag.query,page=ViewBag.CurrentPage+1}) } }

    我的问题是>>或
    Html.ActionLink
    会生成一个普通的锚。当你点击这个锚点时,它只是将浏览器重定向到这个链接所指向的地址。这就是您在新窗口中看到部分内容的原因

    如果只想刷新页面的一部分而不重定向,则可以使用AJAX链接(
    AJAX.ActionLink
    ):

    @Ajax.ActionLink(
    
    “非常好用,谢谢!html和ajax链接之间有什么区别,让我知道将来会怎样?”?
    using (Ajax.BeginForm("Search", "Home", new AjaxOptions
    {
        HttpMethod = "GET",
        InsertionMode = InsertionMode.Replace,
        UpdateTargetId = "searchResults",
    }))
    {
        <input type="text" name="searchString" />
        <input type="submit" value="Search" />
    }
    
    @foreach (var item in @Model)
    
    <li>@Html.ActionLink(item.Name, "Result/" + item.Id, "Result")</li>
    
    }
    
    @{if(ViewBag.HasPrevious)
        {
            @Html.ActionLink("<<", "Search", new { searchString = ViewBag.query, page = ViewBag.CurrentPage-1 })
        }
    }
    
    @{if(ViewBag.HasNext)
        {
            @Html.ActionLink(">>", "Search", new {  searchString = ViewBag.query, page = ViewBag.CurrentPage+1 })
        }
    }
    
    @Ajax.ActionLink(
        "<<", 
        "Search", 
        new { 
            searchString = ViewBag.query, 
            page = ViewBag.CurrentPage - 1 
        },
        new AjaxOptions
        {
            HttpMethod = "GET",
            InsertionMode = InsertionMode.Replace,
            UpdateTargetId = "searchResults"
        }
    )