2014-04-25 3 views
-1

Как объединить число с датой в NULL в текстовое поле в C# asp.net, чтобы показать только дату? Когда я загружаю дату в текстовом поле, я получаю ниже в текстовом поле:Как связать дату и время в текстовое поле в C# asp.net, чтобы показать только дату

2014-04-26 00: 00: 00,000

Но я просто хочу дату любые идеи? Не могу получить tostring для отображения того, что я хочу. Я зову значение, как показано ниже:

txtDateExpected.Text = loadVisitDetails.expectedDate.ToString(); 
+4

Как вы выглядели? Я искал 'C# date tostring' и получил следующее: http://msdn.microsoft.com/en-us/library/zdtaw1bw%28v=vs.110%29.aspx – MatBailie

+0

Его отличие как im, использующее число с датой с ошибкой – wubblyjuggly

+1

@ wubblyjuggly Это так же просто, как 'yourNullable.Value.Date.ToString()' –

ответ

3

вы можете получить только часть даты, используя Date свойство DateTime класса:

txtDateExpected.Text = loadVisitDetails.expectedDate != null ? loadVisitDetails.expectedDate.Date.ToString() : ""; 

или:

if(loadVisitDetails.expectedDate != null) 
    txtDateExpected.Text = loadVisitDetails.expectedDate.Date.ToString(); 

Проверить Here DateTime.Date MSDN docs

+0

OP добавил в комментарии, что 'expectedDate' имеет значение NULL. Можете ли вы добавить эту проверку тоже? – Yahya

+0

Добавлено в него .... –

+0

'ToString()' будет выдавать результаты в разных форматах, если вы не укажете культуру или явный формат – Andrew

1

Использование string.Format, чтобы сформировать представление, которое вы хотите:

DateTime? dt = loadVisitDetails.expectedDate; 
txtDateExpected.Text = (dt == null) ? 
         String.Empty : 
         String.Format("{0:yyyy-MM-dd}", dt); 
+0

Это означает, что вы связаны определенным форматом. Там, где OP просто нужна дата. – Yahya

+0

Кроме того, наверняка более читаемым является использование 'dt.ToString()', а не 'string.Format'? –

+0

хорошо, что это вопрос вкуса;) – Andrew

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