asp.net 2.0: лучшая структура данных для привязки к gridview - PullRequest
0 голосов
/ 22 сентября 2009

По большей части приложение, над которым я работаю, работает с объектом, и я могу без проблем связать список объектов с сеткой.

Однако в нескольких случаях я хочу отобразить результаты объединения нескольких таблиц в виде сетки. В текущем коде используется набор данных, который довольно прост, но мне интересно, есть ли лучший / более эффективный способ сделать это.

Нам не нужны большинство функций набора данных - данные доступны только для чтения, и в большинстве случаев не будет большого количества записей. (то есть, вероятно, не более 200, и обычно 10-20)

1 Ответ

0 голосов
/ 18 декабря 2009

Я думаю, что вы должны использовать DataReader, когда это возможно. Бывают случаи, когда набор данных более уместен, например, две ситуации, перечисленные ниже. Они взяты из статьи " Почему я не использую DataSets в моих приложениях ASP.NET ". Также ознакомьтесь со следующей статьей " Подробнее о том, почему я не использую наборы данных в моих приложениях ASP.NET ".

  1. В настольном приложении WinForms. Рассмотрим настольный компьютер программа ввода данных. Пользователь может запустить программу, загрузить продажи данные с какого-либо сервера базы данных, сделать некоторые изменения, а затем хотите сохранить эти изменения. Это идеал ситуация для DataSet. Это позволяет данные для чтения в DataSet пребывание в памяти клиента, которая дает пользователю возможность работать на данных без необходимости постоянно совершать поездки обратно в база данных. По завершении редактирования данные, они могут сделать пакетное обновление, изящно обрабатывать любые изменения, которые могло произойти, пока пользователь работая с данными в отключенное состояние. Кроме того, так как DataSet - это отключенные данные Магазин, эти данные могут быть приняты в автономном режиме. Продавец едет к клиенту сайт может загрузить эти данные и иметь возможность просматривать данные на своем ноутбуке во время в пути или находясь у клиента офис.

  2. Для отправки / получения информации об удаленной базе данных или для разрешения связь между разрозненными платформ. Поскольку DataSet может быть сериализованный / десериализованный в XML так легко, они - главный кандидат на отправка информации через физический границы или как средство сериализация данных в Платформо-нейтральный формат. Например, если вы хотите вернуть данные базы данных из веб-службы, один из вариантов заключается в просто прочитайте данные базы данных в DataSet, а затем вернуть DataSet из метода веб-службы. DataSet будет автоматически сериализовано в XML и отправлено через провод. (Лично я не рекомендую возврат данных из веб-службы в таким образом. Скорее я предпочитаю использовать настраиваемые бизнес-объекты - это позволяет лучшая степень контроля над XML сериализация, обеспечивает гораздо легче возврат полезной нагрузки, и появляется меньше архитектуры.

...