Я пересматриваю некоторые устаревшие коды и есть это...
DateTime dateTime = DateTime.Now;
DateTime from = DateTime.Parse(dateTime.ToString("dd/MM/yyyy 00:00:00"));
DateTime to = DateTime.Parse(dateTime.AddDays(8).ToString("dd/MM/yyyy 23:59:59"));
Затем из и в переменные используются в сравнении Linq/Lambda, поэтому должно быть DateTime.
Я не могу найти способ форматировать переменную DateTime, не преобразовывая ее в строку, а затем обратно в DateTime, это кажется глупым, если не сказать больше.
Конечно, должен быть способ форматировать DateTime без преобразования его в строку, а затем обратно в DateTime?
Нет необходимости преобразовывать DateTime
в строку и затем анализировать его обратно в DateTime
, вместо этого используйте DateTime.Date
например:
DateTime from = dateTime.Date;
DateTime to = dateTime.Date.AddDays(9).AddTicks(-1); //or .AddSeconds(-1) if you want
// accuracy to a second.
DateTime
не имеет никакого неявного формата. Строковые представления этого имеют. И Today
свойство задает время до полуночи.
DateTime from = DateTime.Today;
DateTime to = DateTime.Today.AddDays(9).AddSeconds(-1);
DateTime
не имеет «формата», если он не преобразован вstring