Как изменить точность отображения поля DateTime в asp.net Core Razor Pages - PullRequest
0 голосов
/ 02 февраля 2019

Я работаю над своим первым проектом на основных страницах бритвы asp.net и пытаюсь добавить поле даты создания в мою модель Article, которое по умолчанию заполнено текущей датой.Я определил, что это понравилось так:

[Required]
[DataType(DataType.DateTime)]
public DateTime CreationDate { get; set; } = DateTime.Now;

, когда я захожу на страницу создания статьи, это выглядит так:

2019/02/02 09:25:36.377 PM

Я не хочу, чтобы вторая и миллисекунда былипоказано здесь, но не смог найти способ их удалить.Любая помощь будет оценена.

Ответы [ 2 ]

0 голосов
/ 02 февраля 2019

Почему бы просто (положить это в геттер)

var newdate = CreationDate.AddTicks(-CreationDate .Ticks % TimeSpan.TicksPerMinute);

Или попробовать это c # 6 +

[Required]
[DataType(DataType.DateTime)]
public DateTime CreationDate { get; set; } = DateTime.Now.AddTicks(-DateTime.Now.Ticks % TimeSpan.TicksPerMinute);
0 голосов
/ 02 февраля 2019

Возможно, вы захотите либо использовать DateTime.ToString (строка) для отображения даты.Например, CreationDate.ToString("yyyy/MM/dd HH:mm") станет 2019/02/02 09:25

. Или вы можете использовать атрибут DisplayFormat .Пример

[Required]
[DataType(DataType.DateTime)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy/MM/dd HH:mm}")]
public DateTime CreationDate { get; set; } = DateTime.Now;
...