Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.Net核心MVC DisplayFormat不删除日期的时间元素_C#_Asp.net Core_Model View Controller - Fatal编程技术网

C# ASP.Net核心MVC DisplayFormat不删除日期的时间元素

C# ASP.Net核心MVC DisplayFormat不删除日期的时间元素,c#,asp.net-core,model-view-controller,C#,Asp.net Core,Model View Controller,我正在使用ASP.Net核心MVC5.0 我正在尝试格式化日期时间?字段,以便忽略时间部分而仅显示日期 我有以下几点 [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MMM/yyyy}")] public DateTime? NextRenewalDueAt { get; set; } 但它仍然显示时间部分-01/02/2021 00:00:00 我展示- Registered o

我正在使用ASP.Net核心MVC5.0

我正在尝试格式化日期时间?字段,以便忽略时间部分而仅显示日期

我有以下几点

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MMM/yyyy}")]
public DateTime? NextRenewalDueAt { get; set; }
但它仍然显示时间部分-01/02/2021 00:00:00

我展示-

Registered on: @Model.Place.NextRenewalDueAt
我怎样才能摆脱时间部分


谢谢

看起来您不需要设置
ApplyFormatInEditMode=true
,因为它只是一个显示日期。因此,您可以尝试以下选项:

  • Html.DisplayFor

    注册日期:@Html.DisplayFor(m=>m.NextRenewalDueAt)

  • 视图上的格式

    @{ var tempDate=Model.Place.NextRenewalDueAt.HasValue?Model.Place.NextRenewalDueAt.toSortDateString():“”; }

    注册日期:@tempDate

  • 格式字符串仅在绑定数据绑定控件的值时应用于字段值(例如:Html帮助程序:
    EditorFor()
    DisplayFor()
    ,:Input)。通过使用上述代码,您只需从模型中获取日期,而无需绑定到数据绑定控件,因此,它将显示原始格式(如下所示:
    6/3/2021 2:29:23 PM

    要解决此问题,可以使用以下方法:

  • 使用Html.DisplayFor()方法:

  • 更改视图中的日期格式

    注册日期:
    @(Model.Place.NextRenewalDueAt.HasValue?Model.Place.NextRenewalDueAt.Value.ToString(“dd/MMM/yyyyy”):“”)

  • 使用输入标记帮助器:

    [注意]由于,输入标记帮助器根据.NET类型设置HTML类型属性。要格式化日期时间数据类型,我们应该将
    type
    属性设置为
    text
    ,否则,它将使用
    type=“datetime local”
    。有关详细信息,请参阅


  • ASP.Net Core MVC 5.0
    -是MVC 5.0(预核心)、MVC Core(从未达到版本5)还是.Net 5上的MVC(后核心)?谢谢,更改视图中的日期格式有效!
    Registered on: @Model.Place.NextRenewalDueAt
    
    @Html.DisplayFor(m => m.NextRenewalDueAt)