我的集合中有一个对象列表,需要在对象日期属性(NoteDate)上格式化日期,以"dd'/'MM'/'yyyy HH:mm:ss"
的格式显示日期,而在数据库中,日期的格式类似于{{ 1}}。以下是我的目标
'2015-02-19 00:00:00.000'
我填写下面的集合
public class Note
{
public int Id { get; set; }
public string NoteText { get; set; }
public DateTime? NoteDate { get; set; }
}
我们如何编写查询以获得所需的日期格式? 感谢
答案 0 :(得分:1)
您正确地将日期存储在DateTime?
对象中。 DateTime
只是一个存储机制。
您真正感兴趣的是如何在某些用户界面中显示 DateTime
。
所以这是你的日期/时间将要采取的步骤:
DateTime
属性要格式化DateTime
对象中的值,有几个选项 - 请查看DateTime类上的方法。
答案 1 :(得分:0)
您的日期将表示为DateTime
实例.. .NET如何决定代表日期。
当您向用户显示它们/使用它们在某处显示时,您可以在此处简单地格式化它们。例如:
var notesList = _uow.Find<Note>(n => n.FK == leadId).ToList();
var thirdNoteDateString = notesList[2].NoteDate.ToString("dd MM yyyy");
或者,也许在Razor视图中(如果这是一个MVC应用程序):
@foreach (var n in Model.Notes) {
<p>@n.NoteDate.ToString("dd MM yyyy")</p>
}
希望这显示出不同之处。当您决定提交日期时,如何呈现日期。
答案 2 :(得分:0)
您不应仅为展示目的修改业务对象的内容, 您应该使用转换器或字符串格式,如:
<TextBlock Text="{Binding Date, StringFormat={}{0:MM/dd/yyyy}}" />
请参阅此question了解详情