给定指定页面的动态生成项的MVC PagedList

时间:2013-06-26 06:09:06

标签: asp.net-mvc

我有一个用户为指定问题提供的答案模型。问题字段被动态传递给答案模型并在答案视图上逐一生成。 在我的问题模型中,用户可以创建每个问题的页面和顺序。 这是答案和问题的模型: 问题:

[Key]
public int QuestionId { get; set; }
public string Title { get; set; }
public string Order { get; set; }
public string Page { get; set; }

答案:

[Key]
public int AnswerId { get; set; }
public int QuestionId { get; set; }
public string Answer { get; set; }

这就是我向用户展示每个问题并获得答案的方法:

@model IEnumerable<A.Models.Question>
@using (Html.BeginForm("Set", "AddAnswer"))
{
@Html.ValidationSummary(true)
@{
int cnt = 0;
foreach (A.Models.Question item in Model)
 {
<label>@item.Title</label>
<textarea id="B_@cnt" name="a_@item.QuestionId" data-val="true" data-val-length=""100"><textarea>
 cnt++;
}

和我的控制器:

public ViewResult Index()
    {
        return View(context.AddAnswer.ToList());
    }

public ActionResult Set(FormCollection fc)
    {
        AContext db = new AContext();
        var Answer = fc.AllKeys
        .Where(k => k.StartsWith("a_"))
        .ToDictionary(k => k, k => fc[k]);
.....
}

现在终于问我了:

1 - 是否可以根据问题信息显示分页视图。喜欢Page =“必须显示问题的页面”和order =“指定页面上的问题顺序”? 2 - 在上面的方法上显示pagedlist时是否可以避免回发?比如当我们在2页有10个问题的时候,我们回答1页然后去第2个和...并且在finall页面我们立刻将它们发送回控制器。此外,我们还能够在页面中来回导航并获得答案。

谢谢:)

0 个答案:

没有答案