2014-01-08 2 views
1

Я заполняю текстовое поле из базы данных, где мне нужно показать только часть даты. Поэтому я форматирование времени и даты, как это,Преобразование даты в C#

if(ds.Tables[1].Rows[0]["AuditDate"].ToString()!="") 
        txtAuditDate.Text = Convert.ToDateTime(ds.Tables[1].Rows[0]["AuditDate"]).ToString("dd/MM/yyyy"); 

Это работает отлично, теперь мне нужно отправить эти данные текстового поля в базу данных снова в формате даты.

Так что я пытаюсь форматировать текстовое поле, как это,

Convert.ToDateTime(txtAuditDate.Text) 

Но я получаю сообщение об ошибке.

Из базы данных я получаю дату, как этот «1/8/2014 12:00:00 AM» И после первого формата в моем текстовом поле я получаю дату, как этот «08/01/2014 " После этого 2-го преобразования не удалось.

Пожалуйста, помогите мне. Спасибо заранее Gulrej Ali

+0

Gulrej обеспечить некоторую дату выборки, что вы не в состоянии разобрать. – Ehsan

+0

Как обычно, говоря _getting error_ не самый лучший намек на фактическую ошибку – Steve

+0

Я отредактировал мой вопрос и дал даты ... пожалуйста, помогите мне. – Gulrej

ответ

3

Вы можете использовать DateTime.ParseExact() и передать его в формат, который вы использовали во время Назначают времени даты, чтобы text box, который "dd/MM/yyyy".

DateTime dt = DateTime.ParseExact(txtAuditDate.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture); 

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

+0

Его работы. Большое спасибо. – Gulrej

+0

Добро пожаловать. – Adil

Смежные вопросы