Rob*_*bin 1 c# format datetime
我尝试过各种格式但似乎没什么用.字符串是:
2018-06-04T09:07:30:507Z
我得到的错误是字符串不是正确的日期时间格式我尝试的一切.我首先发现/认为字符串是ISO 8601格式,但这似乎也是错误的.
我不认为它应该重要,但我从XML输入中获取此字符串,这是我用于此的代码(使用最新的变体我尝试使其工作):
foreach (XmlNode node in parentNode)
{
foreach (XmlNode child in node)
{
switch (child.Name)
{
case "ShopId":
advance.ShopId = child.InnerText;
break;
case "CustomerId":
advance.CustomerId = child.InnerText;
break;
case "Reference":
advance.Reference = child.InnerText;
break;
case "Amount":
advance.Amount = decimal.Parse(child.InnerText.Replace('.', ','));
break;
case "DateStart":
advance.DateStart = DateTime.Parse(child.InnerText, null, System.Globalization.DateTimeStyles.RoundtripKind);
break;
case "DateEnd":
advance.DateEnd = DateTime.Parse(child.InnerText);
break;
default:
break;
}
}
}
Run Code Online (Sandbox Code Playgroud)
您可以手动选择格式:
DateTime.ParseExact(date, "yyyy-MM-ddTHH:mm:ss:fffZ", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
我认为有一个标准模式,但我找不到一个接受中间"T"的人,因为juharr指出,传入的数据不是标准格式.所以它必须是自定义格式.