0

我正在寻找按照以下简单要求实现寻呼机的最佳方法。

我想要这样的页面

 <Pager 1 2 3 4 ...>

 <Partial View>

我的动作控制器看起来像这样......

    public PartialViewResult DisplayRecordDetails(int recordNumber)
    {
        MyRecord mr = GetRecord(recordNumber);
        return PartialView(mr);
    }

当我单击“1”(页面索引 = 1)时,我将 1 作为参数传递给 DisplayRecordDetails 操作方法并加载带有记录 1 的局部视图。

当我单击“2”(页面索引 = 2)时,我将 2 作为参数传递给 DisplayRecordDetails 操作方法并加载带有记录 2 的局部视图,依此类推......

我将拥有总项目计数信息和当前页面索引信息。现在如何使用此信息动态生成寻呼机?

我曾尝试搜索寻呼机库/助手,但它们都是用于网格的。我如何根据我的情况使用它们?我没有网格。我只有一个部分视图,需要根据页码动态加载。

4

1 回答 1

1

您可以设计一个包含所有 ID 号的视图模型:

public class MyViewModel
{
    // the currently selected id
    public int Id { get; set; }

    // a list of available ids
    public int[] Ids { get; set; }
}

然后有一个控制器操作,它将查询您的数据库或其他任何内容并获取所有可用 ID 的列表:

public ActionResult Index(int? id)
{
    var model = new MyViewModel
    {
        Id = id ?? 0,
        Ids = new[] { 563, 845, 845 } // those will come from your datasource
    };
    return View(model);
}

在相应的视图中,您可以遍历这些 id 并生成链接:

@model MyViewModel
<div>
    @Html.Action("DisplayRecordDetails", new { recordNumber = Model.Id })
</div>
@for (var i = 0; i < Model.Ids.Length; i++) 
{
    <span>@Html.ActionLink((i + 1).ToString(), "Index", new { id = i })</span>
}
于 2012-03-12T08:32:27.023 回答