Упорядочение списка объектов по свойству другого объекта в C # - PullRequest
1 голос
/ 25 июня 2009

У нас есть система, основанная на событиях, которые пользователи приглашают на [UserInvite].

В настоящее время у меня есть страница, на которой перечислены все пользователи, приглашенные на мероприятие; они могут быть отсортированы по различным свойствам, таким как фамилия [восходящий и нисходящий]. Все хорошо, но теперь мне нужно дополнительно отсортировать по свойству UserInvite: DateEdited [снова asc / desc]. Я использовал метод расширения, который принимает строку имени свойства для сортировки, но это не будет работать для свойства другого класса.

Примечания:

  1. UserInvite имеет метод, позволяющий получить по событию и пользователю, который всегда возвращает один UserInvite [или ноль, если приглашение не найдено].
  2. Текущий EventID хранится на главной странице, поэтому его можно найти на странице со списком пользователей

Каков наилучший способ сделать это?

1 Ответ

1 голос
/ 25 июня 2009

Есть ли маршрут от Event до UserInvite? Если это так, просто перейдите отношения. На самом деле, самый простой подход состоит в том, чтобы повторно выставить эту дату на Event - т.е.

public DateTime InviteDate {get {return Invite.Date;}} // or similar

и упорядочить по InviteDate - но вы также можете использовать строку типа "Invite.Date" и разбить ее на точки - например, здесь что-то подобное для IQueryable<T> - хотя это не так т ручка null на данный момент.

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