我正在连接数据库,执行查询,并将数据放入列表中。我的字符串的日期如此mm/dd/yyyy hour:minute:second AM or PM
我希望将这些数据格式化为yyyy-mm-dd,没有时间。
这是我分配数据的地方:
airportItems.ContractReceived_F = dataReader.GetValue(1).ToString();
如何将dataReader.GetValue(1).ToString();
转换为我想要的日期格式?
我尝试了以下内容:
airportItems.ContractReceived_F = string.Format("{0:d}", dataReader.GetValue(1).ToString());
我将ContractReceived_F定义为字符串:
public string ContractReceived_F { get; set; }
它仍然返回时间。
答案 0 :(得分:0)
使用此:
airportItems.ContractReceived_F = dataReader.GetDateTime(1).ToString("yyyy-MM-dd");
其中yyyy代表年份,MM代表月份,dd代表日期。
答案 1 :(得分:0)
为什么不解析您喜欢的数据
DateTime unparsed_date = mydatevalue; //any date in any date format
string parsed_date = unparsed_date.toString("dd mm yyyy");
Theres上有一篇关于msdn的不同解析的文章,我找到了你 check it out
信用转到fubo链接(竖起大拇指)
答案 2 :(得分:0)
我建议使用TryParseExact
然后选择您需要的日期格式
例如:
DateTime OutputDate = null;
DateTime.TryParseExact(DateFromTheView, "yyyy/MM/dd H:mm:ss tt", System.Globalization.CultureInfo.InvariantCulture, DateTimeStyles.None, out OutputDate);
在示例中:格式为“yyyy / MM / dd H:mm:ss tt”,输入日期字符串为DateFromTheView
。 OutputDate
将把新的datetime对象作为值,如果指令失败,它将取为null。