C# 创建新表单时,如何在字段中设置默认日期时间?

C# 创建新表单时,如何在字段中设置默认日期时间?,c#,asp.net-mvc,asp.net-mvc-4,C#,Asp.net Mvc,Asp.net Mvc 4,我对C#和MVC很陌生。我有一个包含多个字段的表单和一个创建日期字段,我希望在创建表单时用当前日期填充该字段 我使用的是实体框架方法,而不是代码优先方法。我使用的是Visual studio 2013和MVC的5.2.3.0版 我已经尝试了很多方法来让它工作。e、 g使用“创建”页面上的Html.Editfor以及模型本身的验证属性来设置。这是我到目前为止得到的 型号… 主控台…… Create.cshtml… @Html.EditorFor(model => model.allCli

我对C#和MVC很陌生。我有一个包含多个字段的表单和一个创建日期字段,我希望在创建表单时用当前日期填充该字段

我使用的是实体框架方法,而不是代码优先方法。我使用的是Visual studio 2013和MVC的5.2.3.0版

我已经尝试了很多方法来让它工作。e、 g使用“创建”页面上的
Html.Editfor
以及模型本身的验证属性来设置。这是我到目前为止得到的

型号…

主控台……

Create.cshtml…

@Html.EditorFor(model => model.allClientDetails.CreatedOn, "", new { @class = "text-danger" })

似乎有许多不同的方法来完成这项任务,但我还没有设法让它工作。在此之前,我们将非常感谢您的帮助

您可以在构造函数中设置默认值:

public class Client_METADATA
{
    public Client_METADATA()
    {
        CreatedOn = DateTime.Now;
    }
}

我能想到的最简单的方法是,将控制器的值作为模型的一部分发送出去。假设您的模型名为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" })

希望有帮助:)

请将代码编辑到问题中,而不是将其作为屏幕截图发布。欢迎这样做,您应该提供更多详细信息,说明哪些内容在此处不起作用。
CreatedOn
字段在视图中不应可编辑。在保存到数据库之前立即在POST方法中设置它的值(您的代码需要在问题中,而不是链接到它的图像),根据问题的标题,要在字段中设置默认日期时间供用户查看或编辑,我相信@Naveen的方法将是使用get方法最简单的方法。要用日期更新数据库,您可以按照上面评论中提到的post方法处理它。如果我不必打开新的窗口来查看你的文章的其余部分,那就更容易了。顺便说一句,您的Create方法中有曲线,因为model.allClientDetails不是要传递给视图的模型的一部分。