Я экономя поле времени в моей базе данных сервера sql как nvarchar в формате (HH: mm).
C# List Сортировать по Время в обратном хронологическом порядке
По предложению КАЖДЫЙ. Теперь я сохранил время в базе данных sql-сервера в формате DateTime. Хотя мне не нужна часть даты, я буду использовать это свойство, чтобы добиться эффекта, который я пытаюсь сделать. Теперь я хочу получить список строк в обратном хронологическом порядке в зависимости от текущего времени выполнения. Например, если моя таблица выглядит следующим образом:
tblFavoriteTime
ID Time Post
1 05:00 AM Something..
2 09:00 AM Another..
3 12:00 PM Hello..
4 01:00 PM Its 8 am..
Когда я захожу на сайт в 12:00, мне нужен список времени в обратном хронологическом порядке. Так 12:00 МП будет находиться в верхней части списка, 12:00PM -> 11:00AM -> 10:00AM -> .... 1:00AM -> 12:00AM -> 01:00PM -> 02:00PM -> ..... 11:00PM
Используя данные выше, я должен получить:
ID Time Post
3 12:00 PM Hello...
2 09:00 AM Another..
1 05:00 AM Something..
4 01:00 PM Its 1 pm..
Есть ли способ сделать это с помощью LinQ .OrderBy()
или что-то вроде этого:
var mylist = _repository.GetAll().ToList()
.OrderBy(x => x.TimeStamp.TimeOfDay() .......);
//as I explained, Im only getting the time of day though its a datetime object, date part wont matter..
Пожалуйста, помогите!
, как это 13:00 наконец после сортировки? –
Почему вы храните [время] (https://msdn.microsoft.com/en-gb/library/bb677243.aspx) как nvarchar? –
@EhsanSajjad позволяет говорить, что у вас есть часы, когда вы смотрите на него в 12:00, представьте, что часы идут против часовой стрелки, '12AM -> 11AM -> ... -> 1AM -> 12PM - 1 PM' –