如何将文本框中的数据插入MVC中的模型?`

时间:2017-04-22 15:23:26

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

所以我在MVC中很新,我得到了Mission模型:

public class Mission
{
    public ObjectId _id { get; set; }
    public string MissionType { get; set; }
    public string ElipseNumber { get; set; }
    public string MissionDate { get; set; }
    public string ReminderNumber { get; set; }
    public string Notes { get; set; }
}

当用户选择特定任务时,它将以@ViewBag.SelectedMission

的形式进入视图

现在,我想让用户可以选择为所选任务添加注释,因此使用模态我添加了一个文本框,如下所示:

<div class="notesLabel">
    @Html.LabelFor(model => model.Notes)
</div>
<div class="notesTextBox">
    @Html.TextBoxFor(model => model.Notes)
</div>

不确定该怎么做,如何从文本框中获取输入并将其添加到SelectedMission.Notes?

先谢谢。

2 个答案:

答案 0 :(得分:0)

我也是初学者但是试图提供帮助。根据我的理解,你可以做类似下面的事情

<强>位指示

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(Mission model)
{
    var notes= model.Notes;
    //Set the values to view model accordingly and save to DB eventually
}

查看

 @model Mission
    @using (Html.BeginForm("Create", "ControllerName"))
    {
        @Html.AntiForgeryToken()
        // ALL YOUR HTML FIELD WILL COME HERE 
        <div class="notesLabel">
           @Html.LabelFor(model => model.Notes)
        </div>
       <div class="notesTextBox">
           @Html.TextBoxFor(model => model.Notes)
       </div>
       <input type="submit" value="save">
    }

答案 1 :(得分:0)

尝试以下代码。表单将提交用户在按钮点击时输入的详细信息。假设:控制器名称为Home,保存注释数据的操作名称为SaveNotes。当用户点击提交按钮时,数据会发送到SaveNotes中的HomeController操作。在动作功能中,验证完成后,值将保存到DB中。如果您不想保存到DB,则可以根据逻辑/设计执行任何操作。值将在objMission.Notes

<% Html.BeginForm("SaveNotes", "Home", FormMethod.Post); %>
    @Html.AntiForgeryToken()
    :
    :
    <div class="notesLabel">
        @Html.LabelFor(model => model.Notes)
    </div>
    <div class="notesTextBox">
        @Html.TextBoxFor(model => model.Notes)
    </div>
    :
    :

    <input type="submit" name="submit" value="Save" />
<% Html.EndForm(); %>


public class HomeController : Controller  
{
    :
    :

    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult SaveNotes(Mission objMission)
    {
        //Set the values to view model accordingly and save to DB eventually
        if (ModelState.IsValid)
        {
            db.Missions.Add(objMission);
            db.SaveChanges();
            return RedirectToAction("Index");
        }

        return View(objMission);
    }

    :
    :
}