Как получить только столбец Date from datetime, используя linq - PullRequest
4 голосов
/ 21 апреля 2011

У меня есть столбец в базе данных как EffectiveDate

, который является типом DateTime.

У меня есть запрос linq для получения EffectiveDate из таблицы.но когда я получаю, я получаю EffectiveDate со временем.

Но в моем запросе linq мне нужна только дата. Мне не нужно время для EffectiveDate.

как написать запрос Linq для этого?

Спасибо

1 Ответ

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

Вызовите свойство Date для любого DateTime struct

EffectiveDate.Date;

или вызовите

EffectiveDate.ToShortDateString();

или используйте формат "d" при вызове ToString() другие форматы DateTime здесь .

EffectiveDate.ToString("d");

Написание запроса Linq может выглядеть следующим образом:

someCollection.Select(i => i.EffectiveDate.ToShortDateString());

и если EffectiveDateДопустимые значения можно попробовать:

someCollection
    .Where(i => i.EffectiveDate.HasValue)
    .Select(i => i.EffectiveDate.Value.ToShortDateString());

Свойство DateTime.Date

Новый объект с такой же датой, как у этого экземпляра, и временемзначение установлено в 12:00:00 полночь (00:00:00).

DateTime.ToShortDateString Метод

Строка, содержащаякраткое строковое представление текущего объекта DateTime.

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