当前日期和时间 - MVC razor 中的默认值
Posted
技术标签:
【中文标题】当前日期和时间 - MVC razor 中的默认值【英文标题】:Current date and time - Default in MVC razor 【发布时间】:2011-10-30 00:57:36 【问题描述】:当带有此文本框的 MVC 视图页面加载时,我想默认显示当前日期和时间。我怎样才能做到这一点?剃须刀。
@html.EditorFor(model => model.ReturnDate)
【问题讨论】:
您显然必须完成此操作,但是对于来到这里的其他人,他们应该问自己服务器时间或客户端时间。下面的答案可能会产生非常不同的结果。 【参考方案1】:在从控制器返回模型之前,请将您的 ReturnDate
属性设置为 DateTime.Now()
myModel.ReturnDate = DateTime.Now()
return View(myModel)
您的视图不是设置属性值的正确位置,因此控制器是更好的位置。
您甚至可以让 ReturnDate
上的 getter 返回当前日期/时间。
private DateTime _returnDate = DateTime.MinValue;
public DateTime ReturnDate
get
return (_returnDate == DateTime.MinValue)? DateTime.Now() : _returnDate;
set_returnDate = value;
【讨论】:
这对我有用,除了我收到此错误“system.datetime.now 不能像方法一样使用”。在 DateTime 之后删除括号。现在为我解决了这个问题。【参考方案2】:如果你想在没有模型的视图上显示日期时间,只需这样写:
Date : @DateTime.Now
输出将是:
Date : 16-Aug-17 2:32:10 PM
【讨论】:
【参考方案3】:您可以在模型上初始化 ReturnDate,然后再将其发送到视图。
在控制器中:
[HttpGet]
public ActionResult SomeAction()
var viewModel = new MyActionViewModel
ReturnDate = System.DateTime.Now
;
return View(viewModel);
【讨论】:
看起来@Jamie 和我同时回答。他的作品也是!同样的答案。【参考方案4】:这不是默认构造函数的用途吗?
class MyModel
public MyModel()
this.ReturnDate = DateTime.Now;
public date ReturnDate get; set;;
【讨论】:
【参考方案5】:.razor 文件中的日期
<p>@DateTime.Today.toString()<p>
【讨论】:
以上是关于当前日期和时间 - MVC razor 中的默认值的主要内容,如果未能解决你的问题,请参考以下文章
MVC 3 Razor 视图:从布尔模型值生成 JavaScript