我是ASP.NET MVC的新手,并尝试使用模型,验证和控制器。
我遵循一些简单的教程并拥有以下文件:
型号:
public class ItineraryItem
{
public DateTime? When { get; set; }
public string Description { get; set; }
public int? Duration { get; set; }
}
查看:
@model MVCSuccinctly.Models.ItineraryItem
<h2>Create</h2>
<div class="editor">
@using (Html.BeginForm())
{
<p>
@Html.LabelFor(m => m.Description)
@Html.TextBoxFor(m => m.Description)
@Html.ValidationMessageFor(m => m.Description)
</p>
<p>
@Html.LabelFor(m => m.When)
@Html.TextBoxFor(m => m.When)
@Html.ValidationMessageFor(m => m.When)
</p>
<p>
@Html.LabelFor(m => m.Duration)
@Html.TextBoxFor(m => m.Duration)
@Html.ValidationMessageFor(m => m.Duration)
</p>
<p><input type="submit" value="Save" /></p>
}
</div>
控制器:
public class ItineraryController : Controller
{
public ActionResult Create()
{
var model = new ItineraryItem();
return View(model);
}
}
根据教程,我输入的值对模型中的数据类型无效并提交表单。
我应该收到错误消息&#34;当&#34;和&#34;持续时间&#34;字段,带有来自模型绑定器的验证消息的文本,基于数据类型,但是没有任何反应。
为什么?
答案 0 :(得分:0)
我发现了什么问题。我不得不将我的模型发送到Action并从那里返回View:
public ActionResult Create(ItineraryItem data)
{
return View();
}