2015-02-18 3 views
-9

Convert.ToDateTime работает в консольном приложении,Convert.ToDateTime Работает в консольном приложении, но ошибки вне в asp.net

string a = "18/02/2015"; 
DateTime aa = Convert.ToDateTime(a); 

Ошибка из в ASP.Net формах говоря строку не RIGH формата,

DateTime aa = Convert.ToDateTime(myTextBox.Text); 

он работал и раньше, но так как я получил новый сервер он начал давать мне эту ошибку ..

Входная строка кажется, то же мне «18/02/2015»

+0

, пожалуйста, проверьте системный формат даты и времени. Я думаю, что это зависит от ваших системных настроек даты и времени. дата отправки в соответствии с вашими системными настройками, то это будет работа. –

+5

Я проигнорировал, потому что это ваш 250 + вопрос, и вы, кажется, не научились искать и не задавать правильный вопрос. Упомяните сообщение об ошибке _exact_ и покажите, что вы нашли при поиске на этом сайте для этого сообщения. – CodeCaster

+0

Я уже добавил исключение, говоря, что строка не соответствует формату. Google никогда не ответит мне, почему код работает на консоли и почему он не работает в asp.net, дайте ему пойти и передать мне один результат. – Mathematics

ответ

5

Convert.ToDateTime использует DateTime.Parse внутренне, с Текущая культура сервера. И проблема в том, что формат вашей текущей культуры вашего нового сервера DateTime отличается от вашей строки.

Вы можете использовать DateTime.ParseExact() вместо этого.

Преобразует заданное строковое представление даты и времени в его DateTime эквивалентном с использованием указанного формата и информацию о формате культуры конкретного. Формат строкового представления должен точно соответствовать указанному формату.

DateTime.ParseExact(myTextBox.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); 
Смежные вопросы