Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果datetime中的字符串无效,请在C中设置sql的null datetime类型#_C#_Sql_String_Datetime - Fatal编程技术网

C# 如果datetime中的字符串无效,请在C中设置sql的null datetime类型#

C# 如果datetime中的字符串无效,请在C中设置sql的null datetime类型#,c#,sql,string,datetime,C#,Sql,String,Datetime,如果datetime中的字符串无效,请在C中设置sql的null datetime类型# 错误:字符串未被识别为有效的日期时间。请重试 record.UpdatedOn = DateTime.ParseExact(customerRow.UpdatedOn, "dd/MM/yyyy", CultureInfo.InvariantCulture); 您使用的是null,这意味着您使用的是当前区域性。如果使用的日期分隔符与/不同,则会出现问题。这就是我使用不变量文化的原因 阅读: “/”自定

如果datetime中的字符串无效,请在C中设置sql的null datetime类型#

错误:字符串未被识别为有效的日期时间。

请重试

record.UpdatedOn = 
  DateTime.ParseExact(customerRow.UpdatedOn, "dd/MM/yyyy", CultureInfo.InvariantCulture);
您使用的是
null
,这意味着您使用的是当前区域性。如果使用的日期分隔符与
/
不同,则会出现问题。这就是我使用
不变量文化的原因

阅读:

“/”自定义格式说明符表示日期分隔符,该分隔符 用于区分年、月和日适当的 从中检索本地化的日期分隔符 当前或指定属性的DateTimeFormatInfo.DateSeparator属性 文化

根据问题的另一部分,如果日期无效,如何将
null
属性设置为
null
,您应该使用
DateTime.TryParseExact

record.UpdatedOn = null;
DateTime updatedOn;
if(DateTime.TryParseExact(customerRow.UpdatedOn, "dd/MM/yyyy", CultureInfo.InvariantCulture))
    record.UpdatedOn = updatedOn;

如果DateTime属性未成功解析,是否要将其设置为null

if(DateTime.TryParse(customerRow.UpdatedOn, out record.UpdatedOn) == false)
    record.UpdatedOn = null;

你的绳子看起来像什么?您打印出来了吗?在customerRow.UpdatedOn=“NotGiven”中的某个时候,在使用您的代码后出现了相同的错误。@Sandeep:我已经编辑了我的答案。谢谢@Tim我已经添加了我的答案它在初始化DateTime的默认变量后工作感谢@FredrikRedin我已经添加了我的答案它在初始化DateTime的默认变量后工作
if(DateTime.TryParse(customerRow.UpdatedOn, out record.UpdatedOn) == false)
    record.UpdatedOn = null;
DateTime outUpdatedOn = default(DateTime);
if (DateTime.TryParse(customerRow.UpdatedOn, out outUpdatedOn)) record.UpdatedOn = outUpdatedOn; else record.UpdatedOn = null;