model.DtNews)我不知道在哪里以及如-6ren">
gpt4 book ai didi

asp.net-mvc - 如何在 Razor View 中格式化 lambda 表达式中的日期?

转载 作者:行者123 更新时间:2023-12-04 14:18:17 25 4
gpt4 key购买 nike

我有一个 View ,我需要在该 View 上显示 "dd/MM/yyyy" 格式的日期.

实际上显示为:@Html.LabelFor(model => model.DtNews)我不知道在哪里以及如何放置 Format() 函数。

使用 EF 从数据库中检索数据。我该怎么做?

最佳答案

@Html.LabelFor(model => model.DtNews)
@Html.EditorFor(model => model.DtNews)

在您的 View 模型上,您可以使用 [DisplayFormat]属性
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime DtNews { get; set; }

现在你要告诉我这个类是由 EF 框架生成的,我会回复你: 您不应在 View 中使用 EF 自动生成模型 .您应该定义和使用 View 模型。 View 模型是专门为您的 View 需求定制的类。例如,在此特定 View 中,您需要以特定方式格式化日期:完美适合 View 模型:
public class MyViewModel
{
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime DtNews { get; set; }
}

那么您的 Controller 操作可以查询您的存储库并获取域模型(EF 自动生成的实体)并将其映射到 View 模型。然后它将这个 View 模型传递给 View 。

关于asp.net-mvc - 如何在 Razor View 中格式化 lambda 表达式中的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6656173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com