Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.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# 日期时间转换-服务器_C#_Asp.net_.net - Fatal编程技术网

C# 日期时间转换-服务器

C# 日期时间转换-服务器,c#,asp.net,.net,C#,Asp.net,.net,我已经将我的DateOfBirth属性声明为string,并在将其传递到数据库之前将其解析为DateTime,因为DateOfBirth列是DateTime格式的 在我的本地系统中,转换工作正常,但在将应用程序托管到服务器之后,显示错误(如字符串)的DateTime转换未被识别为有效的DateTime 我试过了 <system.web> <globalization culture="en-gb"/> <!-- ... --> </system

我已经将我的DateOfBirth属性声明为string,并在将其传递到数据库之前将其解析为DateTime,因为DateOfBirth列是DateTime格式的

在我的本地系统中,转换工作正常,但在将应用程序托管到服务器之后,显示错误(如字符串)的DateTime转换未被识别为有效的DateTime

我试过了

 <system.web>
  <globalization culture="en-gb"/>
  <!-- ... -->
</system.web>

没用,这是什么问题,这里有人能帮我吗…

你需要转换它,比如:

var sqlDate = myDateTime.ToString("yyyy-MM-dd HH:mm:ss");

我的猜测是,根据文化,你正在传递一个无效的日期。一般来说,英国的日期是先写日期,然后写月份。您将通过1988年4月13日,解析为13个月的第4天。13号是几月?我不知道,.Net运行时也不知道。

我有同样的问题,我将web.config文件中的区域性信息更改为:

<globalization culture="en-gb" uiCulture="auto"/>

希望有帮助…:

我们可以看到您传入的未转换的日期吗?DateTime.parse04/13/1988,新文化信息GB您还可以使用ParseExact或TryParseExact函数。1988年4月13日的格式为MM/DD/YYYY。这不是英国标准的DD/MM/YYYY吗?我想他是在尝试从一个字符串转换到另一个日期,而你是在从一个日期转换到另一个字符串。@TherelmChitchConnors如果他要将它传递给SQL,它将需要是那种格式的字符串:@mattyOMMO:实际上db中的DateOfBirth类型是DateTime,而不是stringYeah,这很好,传递我在回答中所说的内容正是SQL需要的格式:当您使用myDateTime.Date时,时间部分将为00:00:00,显示错误,如日历系统中不支持字符串表示的日期时间。全球化。GregoriaCalendar…我正在传递日期1988年4月13日我尝试更改您的格式,如MM/dd/yyyy…其工作正常,非常感谢
<globalization culture="en-gb" uiCulture="auto"/>
DateTime dob = DateTime.ParseExact(DateOfBirth, "dd/MM/yyyy", 
CultureInfo.InvariantCulture);