Объектные коллекции, которые в. NET 2.0

типизированные наборы данных значительно выигрывают

Объектные коллекции, которые в.NET 2.0 легко определяются через обобщенные коллекции, принципиально более просты в своем устройстве и обеспечивают лучшую производительность, чем наборы данных. Типизированные наборы данных значительно выигрывают в случае данных небольшого объема, особенно если вам нужна поддержка обновлений, удалений и вставок. Но в случае простого отображения большой коллекции данных вам, при использовании набора данных вместо специальной коллекции, придется заплатить немалую цену в смысле памяти и производительности. Выбор между наборами данных и специальными коллекциями Когда вы имеете дело с очень большими коллекциями данных вроде той, что показана в листинге 6.2, в первую очередь следует принимать во внимание требования к памяти. Исходя из уже виденных вами примеров в этой книге вы, возможно, склонны использовать в качестве коллекции данных типизированный набор. Однако прежде чем сделать это, стоит дважды подумать. Хотя усовершенствованный класс DataSet в.NET 2.0 значительно улучшен в смысле масштабируемости и производительности в случае больших наборов данных, он все-таки остается достаточно громоздким объектом из-за всех встроенных в него возможностей поддержки иерархии, отслеживания изменений и обновления. Если вы рассматриваете представление в сетке миллионов строк данных и собираетесь предоставить пользователям возможность редактировать строки, чтобы при этом набор данных передавал сделанные изменения обратно в хранилище данных, то класс DataSet — это, может быть, действительно то, что вам нужно. Однако я бы не советовал вам проектировать свое приложение таким образом. Отображение больших коллекций данных следует рассматривать как особый случай применения, сфокусированный на представлении — вы лишь позволяете пользователю просмотреть большое число строк, чтобы найти интересующий его элемент данных. Если вам нужно поддерживать редактирование этих элементов данных, я предлагаю предоставить для этого пользователю отдельную форму. Однако как вы скоро увидите, можно позволить ему редактировать значения в сетке, избежав при этом накладных расходов, присущих наборам данных.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *