DateTime анализируется по-разному в разных средах? - PullRequest
0 голосов
/ 21 апреля 2011

Я вставляю некоторые данные в список SharePoint (через веб-службы), и на своем локальном компьютере я устанавливаю поле даты следующим образом (жестко запрограммировано в этом примере)

<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"}

Как это возможно?

Заранее спасибо.

Edit:

мы также переехали с хоста на другой две недели назад и никогда раньше не сталкивались с этой проблемой.

Ответы [ 2 ]

2 голосов
/ 21 апреля 2011

Используйте DateTime.ParseExact вместо Parse, преобразование будет похоже на следующий код.

CurDate = DateTime.ParseExact(YourDateString, "dd/MM/yyyy hh:mm", System.Globalization.CultureInfo.CurrentCulture, System.Globalization.DateTimeStyles.None)
0 голосов
/ 21 апреля 2011

На хосте может быть другой локальный компьютер. в документации The string s is parsed using formatting information in the current DateTimeFormatInfo object, which is supplied implicitly by the current thread culture.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...