Здесь мы снова со следующей проблемой при сортировке.
это следующий вопрос этого вопроса
Теперь я создал тип, который должен содержать нужные мне данные. однако, когда я пытаюсь извлечь данные из gridview, он возвращает null, что означает, что я не могу сортировать что-то, что не существует в первую очередь...
любые идеи, почему это возвращает null...
IEnumerable<JointServerData> data = gvServers.DataSource;
var sorted = data;
switch (p)
{
case "domain":
sorted = data.OrderBy(o => o.DomainName);
break;
default:
break;
}
gvServers.DataSource = sorted;
gvServers.DataBind();
выше - это то, что я пытаюсь сделать...
Не видя всего своего кода, я должен был предположить, что это проблема PostBack. Веб-сайт по своей сути является апатридом, и вам необходимо решить эту проблему путем либо кэширования информации между запросами страниц, либо путем извлечения данных каждый раз.
Я согласен с Марком. Кажется, что это происходит между postbacks. Если это так, вы не можете получить доступ к источнику данных сетки, потому что после первой привязки и рендеринга этой сетки в html вы получите только этот html для обратной передачи, но не для реального источника данных. Вам нужно сохранить свой источник данных либо в сеансе, либо получить его при каждой обратной передаче из базы данных.
P.S. и извините, ребята, за мой уродливый английский: - [
Попробуйте установить привязку данных в событии инициализации Init.
Другое дело отметить, что GridView не сохраняет свойство DataSource заполненный над обратными передачами (для фейсов производительности, поскольку он должен был
Teemu Keiski ASP.NET MVP, AspInsider Финляндия, ЕС
из http://bytes.com/topic/asp-net/answers/828307-gridview1-datasource-null или вы используете источник данных linq для запросов yor linq. он автоматически обрабатывает процесс сортировки.