C# Mvc使用链接到模型的数据预填充日期字段
我想创建一个表单,该表单将创建一个新项目,但会预填充一些数据,特别是我希望成为C# Mvc使用链接到模型的数据预填充日期字段,c#,asp.net-mvc,C#,Asp.net Mvc,我想创建一个表单,该表单将创建一个新项目,但会预填充一些数据,特别是我希望成为DateTime的日期。现在,并最终将此数据与模型链接,而不保留用户修改它的选项 到目前为止,我所做的是: @using (Html.BeginForm()) { { var currentDate = DateTime.Now; Model.m_OrderDate = currentDate; } @Html.ValidationSummary(true) (...) Order Date: @
DateTime的日期。现在,并最终将此数据与模型链接,而不保留用户修改它的选项
到目前为止,我所做的是:
@using (Html.BeginForm()) {
{
var currentDate = DateTime.Now;
Model.m_OrderDate = currentDate;
}
@Html.ValidationSummary(true)
(...)
Order Date: @Html.DisplayFor(model => model.m_OrderDate)<br/>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
@使用(Html.BeginForm()){
{
var currentDate=DateTime.Now;
Model.m_OrderDate=当前日期;
}
@Html.ValidationSummary(true)
(...)
订单日期:@Html.DisplayFor(model=>model.m_OrderDate)
但应用程序在运行时崩溃,出现在Model.m_OrderDate=currenDate
行,表示对象引用未设置为对象的实例。
我已经寻找了许多解决方案,但尚未解决。有人能帮我吗?非常感谢!在您的模型中:
private DateTime? orderDate = null;
public DateTime OrderDate
{
get { return orderDate ?? DateTime.Now; }
set { orderDate = value; }
}
唯一的另一点是确保将初始化模型传递给GET视图,即:
public ActionResult MyAwesomeView()
{
return View(new MyModel());
}
默认值将自动填充。您的模型对象似乎为空-您是否在控制器中初始化它?我刚刚看到了与您相同的事情,Jarimba。不,它没有在控制器中初始化。到目前为止,在我的“创建”中视图,我不初始化任何东西,但我会尝试这样做。很好的观点!就这么简单。谢谢@RuiJarimba!