使用IPagedList在视图中提交表单

时间:2017-06-13 16:42:38

标签: c# linq asp.net-mvc-4

在视图中我有这段代码:

`@model IPagedList<WebApplication3.Models.TopicAndDetails>
...
@foreach (var item in Model)
{...
        @Html.DisplayFor(modelItem => item.Topic)
...
}...
@using (Html.BeginForm("Index", "QuestionAndAnswer", FormMethod.Post))
{
       @Html.TextBoxFor(model => model.Topic) // I want to use it but I can't
       <button type="submit" class="btn btn-default" value="submit">Submit</button>
}`

如何提交表单以创建新主题,但我仍然使用IPagedList。谢谢你的帮助 。

1 个答案:

答案 0 :(得分:1)

嗯,这有点吵,但这是最简单的:

`@model IPagedList<WebApplication3.Models.TopicAndDetails>
 @{ string topic = ""; }
...
@foreach (var item in Model)
{...
        @Html.DisplayFor(modelItem => item.Topic)
        topic = item.Topic;
...
}..

@using (Html.BeginForm("Index", "QuestionAndAnswer", FormMethod.Post))
{
       @Html.TextBoxFor(model => topic) 
       <button type="submit" class="btn btn-default" value="submit">Submit</button>
}`

更新(根据评论) 你没有提交TopicAndDetails对象。您提交(和需要)的所有内容都是名为model的字符串。

 [HttpPost] 
 public ActionResult Index( string topic) 
 { 
    TopicAndDetails newtopic = new TopicAndDetails(); 
    newtopic.Topic = topic; 
    db.Topics.Add(newtopic); 
    db.SaveChanges(); 
    return RedirectToAction("Index"); 
}