答案 0 :(得分:2)
答案 1 :(得分:1)
internal class DateTimeParse
{
public DateTimeParse(string str)
{
DateTime dt = DateTime.MinValue;
Correct = DateTime.TryParse(str, out dt);
if (Correct) Value = dt;
}
public DateTime Value { get; private set; }
public bool Correct { get; private set; }
}
var hist = from x in aNodes
let dt = new DateTimeParse(x.InnerHtml)
where dt.Correct
select dt.Value;
答案 2 :(得分:0)
这里的问题是DateTime.Tryparse
几乎所有TryParse
都返回一个布尔值。
这里的OUT参数是DateTime
(不可为空)。
就像:
bool myBool = Datetime.TryParse(myString, out myDateTimeNotNullable);
您也可以在验证中嵌套使用它:
if(Datetime.TryParse(myString, out myDateTimeNotNullable))
{
//myDateTimeNotNullable has the valid DateTime from myString
}
else
{
//myDateTimeNotNullable has the value set to new DateTime()
}
这就是我要写的:
DateTime OrderDate;
DateTime.TryParse(((XmlNode)order.Element("OrderDate")).InnerText, out OrderDate);
我希望它对某人有所帮助,因为它是一个老帖子。