我在格式化对象列表中每个日期属性的DateTime时遇到了很大的问题。以下是我到目前为止尝试过的几个例子:
var data = vulnerabilityList.Skip(skip).Take(pageSize).ToList()
.Select(v => { v.PublishedDate =
v.PublishedDate.ToString("dd/MM/yyyy"); return v; });
和
var data = vulnerabilityList.Skip(skip).Take(pageSize).ToList()
.Select(v => { v.PublishedDate =
DateTime.ParseExact(v.PublishedDate.ToString(), "dd/MM/yyyy",
CultureInfo.CurrentCulture); return v; });
最终我希望格式为31/12/2017并且它将作为JSON返回,因此似乎忽略了漏洞类的数据注释。第一个例子没有编译,因为显然它试图将DateTime设置为字符串,但我把它作为我想要做的例子。
由于
答案 0 :(得分:0)
日期时间是使用数字表示日期和时间,并且它没有固有格式。它旨在让您在阅读或将其显示给用户时将其格式化。所以做这样的事情:
v.PublishedDate = (DateTime)v.PublishedDate.ToString("dd/MM/yyyy")
仅将发布日期设置为dd / MM / yy 00:00:00(如果确实有效)。
我相信您需要做的就是更改最终解析JSON的方式,或者将DateTime作为字符串存储在新属性中以供阅读。