在Asp.NET MVC中以dd/mm/yyyy格式显示DateTime值

Mur*_*dız 66 asp.net-mvc datetime datetime-format asp.net-mvc-4

是否可以借助方法显示dd/mm/yyyy格式的DateTime值?我尝试通过使用一些格式并在相关属性中添加一些注释来完成此操作,如下所示,但它没有任何意义.任何帮助解决这个问题将不胜感激.HTML HeplerAsp.NET MVC@Html.LabelFor

模型:

[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> RegistrationDate { get; set; }
Run Code Online (Sandbox Code Playgroud)

Mah*_*344 82

您所要做的就是在html助手调用中应用您想要的格式,即.

@Html.TextBoxFor(m => m.RegistrationDate, "{0:dd/MM/yyyy}")
Run Code Online (Sandbox Code Playgroud)

您无需在模型类中提供日期格式.

  • 如果您关注区域格式,可以尝试`{0:d}` (7认同)

小智 50

经过几个小时的搜索,我刚刚用几行代码解决了这个问题

你的模特

      [Required(ErrorMessage = "Enter the issued date.")]
      [DataType(DataType.Date)]
      public DateTime IssueDate { get; set; }
Run Code Online (Sandbox Code Playgroud)

剃刀Page

     @Html.TextBoxFor(model => model.IssueDate)
     @Html.ValidationMessageFor(model => model.IssueDate)
Run Code Online (Sandbox Code Playgroud)

Jquery DatePicker

<script type="text/javascript">
    $(document).ready(function () {
        $('#IssueDate').datepicker({
            dateFormat: "dd/mm/yy",
            showStatus: true,
            showWeeks: true,
            currentText: 'Now',
            autoSize: true,
            gotoCurrent: true,
            showAnim: 'blind',
            highlightWeek: true
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

Webconfig文件

    <system.web>
        <globalization uiCulture="en" culture="en-GB"/>
    </system.web>
Run Code Online (Sandbox Code Playgroud)

现在您的文本框将接受"dd/MM/yyyy"格式.

  • 我尝试了你所说的所有内容,但它一直在失败.我猜你没有激活不引人注目的jquery,因为如果你有,它会抛出验证错误,说该字段不是有效日期,(尝试日期如31/01/2014,bcb 1月31日.)尝试它告诉我你是否有同样的问题.Thnks (2认同)

Dav*_*.id 10

我知道这是一个较旧的问题,但作为参考,一种非常简单的格式化日期的方法,没有任何数据注释或任何其他设置如下:

@Html.TextBoxFor(m => m.StartDate, new { @Value = Model.StartDate.ToString("dd-MMM-yyyy") })
Run Code Online (Sandbox Code Playgroud)

上述格式当然可以改为任何形式.


Aym*_*man 7

或者在视图中使用它(Razor页面)

@item.ResgistrationhaseDate.ToString(string.Format("dd/MM/yyyy"))
Run Code Online (Sandbox Code Playgroud)

我建议不要在模型类中添加日期格式


Ste*_*ven 6

由于问题是"显示":

@Html.ValueFor(model => model.RegistrationDate, "{0:dd/MM/yyyy}")
Run Code Online (Sandbox Code Playgroud)