2011-04-21 3 views
0

나는 (웹 서비스를 통해) SharePoint 목록에 일부 데이터를 삽입하고 내 로컬 컴퓨터에서 나는 (열심히이 예제에서는 코딩)이 같은 날짜 필드다른 환경에서 DateTime의 구문이 다르게 해석됩니까?

<Field Name='TimeOnScene'>" + DateTime.Parse("13/12/2011 1:00").ToString("yyyy-MM-ddTHH:mm:ssZ") + "</Field> 

를 설정하고 내 로컬 컴퓨터에서 잘 작동 하지만 웹 호스트에 게시하고 동일한 코드를 실행하면

{"Message":"String was not recognized as a valid DateTime.","StackTrace":" 
// 
// 
System.DateTimeParse.Parse(String s, DateTimeFormatInfo dtfi, DateTimeStyles styles)\r\n at System.DateTime.Parse(String s)\r\n "ExceptionType":"System.FormatException"} 

어떻게 가능합니까?

미리 감사드립니다.

편집 :

우리는 2 주 전에 다른 호스트에서 이동 결코 전에이 문제를 가지고 있었다.

+0

웹 호스트의 DateTime에 어떤 문자열이 있는지 확인 했습니까? –

+0

죄송합니다. 어떻게합니까? – Nick

+0

내 생각 엔 문자열이 예상 한 것과 다른 문화권에 있다고 생각합니다. –

답변

2

구문 분석 대신 DateTime.ParseExact를 사용하면 변환은 다음 코드와 유사합니다.

CurDate = DateTime.ParseExact(YourDateString, "dd/MM/yyyy hh:mm", System.Globalization.CultureInfo.CurrentCulture, System.Globalization.DateTimeStyles.None) 
+0

@ 닉,이 코드는 만족스럽지 않습니까? –

0

호스트의 컴퓨터에서 다른 로컬 세트가있을 수 있습니다. 설명서에 The string s is parsed using formatting information in the current DateTimeFormatInfo object, which is supplied implicitly by the current thread culture.

관련 문제