我不知道为什么我的脑袋正在旋转 - 肯定是漫长的一天 - 但我需要一些帮助。
我有一个DateTime变量和一个String变量。我最终需要比较两者的平等性。 DateTime将为null或DateTime。该字符串将是表示为字符串的日期(mm / dd / yy)或单个单词。一个简单的bool表明两个变量是相同的,这就是我所需要的,但我真的很挣扎。
目前,我收到一条错误消息,指出date2未初始化。建议非常感谢。谢谢!
这是我开始的......
string date1= "12/31/2010";
DateTime? date2= new DateTime(1990, 6, 1);
bool datesMatch = false;
DateTime outDate1;
DateTime.TryParse(date1, out outDate1);
DateTime outDate2;
if (date2.HasValue)
{
DateTime.TryParse(date2.Value.ToShortDateString(), out outDate2);
}
if (outDate1== outDate2)
{
datesMatch = true;
}
if (!datesMatch)
{
// do stuff here;
}
FYI - date1和date2初始化在顶部,仅用于开发目的。实际值从数据库中提取。
string date1 = "12/31/2010";
DateTime? date2 = new DateTime(1990, 6, 1);
bool datesMatch = false;
DateTime outDate1;
bool successDate1 = DateTime.TryParse(date1, out outDate1);
DateTime outDate2;
bool successDate2 = false;
if (date2.HasValue)
{
successDate2 = DateTime.TryParse(date2.Value.ToShortDateString(), out outDate2);
}
if (successDate1 && successDate2)
{
if (outDate1 == outDate2)
{
datesMatch = true;
}
}
if (!datesMatch)
{
// do stuff here;
}
答案 0 :(得分:6)
DateTime.TryParse
返回一个布尔值,因此您知道它是否成功。使用该返回值。
string date1= "12/31/2010";
DateTime? date2= new DateTime(1990, 6, 1);
bool datesMatch = false;
DateTime outDate1;
bool success = DateTime.TryParse(date1, out outDate1);
DateTime outDate2;
if (success)
{
// etc...
}