我是C#和MVC的新手。我有一个包含许多字段的表单和一个在字段上创建的表单,我希望在创建表单时填充当前日期。
我使用的是实体框架方法,而不是代码优先方法。我正在使用Visual Studio 2013和MVC的5.2.3.0版本。
我尝试了很多方法来实现这个目的。例如,使用创建页面上的Html.Editfor
以及模型本身中的验证属性进行设置。这是我到目前为止所得到的......
模型... Current Model to display validation attributes
家庭控制器.... Home Controller
Create.cshtml ...
@Html.EditorFor(model => model.allClientDetails.CreatedOn, "", new { @class = "text-danger" })
似乎有很多不同的方法可以完成这项任务,但我还没有成功完成这项工作。任何帮助都提前非常感谢。
答案 0 :(得分:2)
我能想到的最简单的方法是,只需从控制器发送值作为模型的一部分。假设您的模型名称是Student,并且您有一个名为CreatedOn的属性,因此您的控制器代码应该类似于
Public ActionResult Index()
{
var student = new Student();
student.CreateOn = DateTime.Now;
return View(student);
}
在你看来你
@Html.EditorFor(model => model.CreatedOn, new { @class = "text-danger" })
希望有所帮助:)
答案 1 :(得分:0)
您可以在构造函数中设置默认值:
public class Client_METADATA
{
public Client_METADATA()
{
CreatedOn = DateTime.Now;
}
}