Категории
Войти
Поиск
Реклама
Полезное:
Горящие путевки в Турцию
www.dnt-tour.ru
Новые статьи
Опечатка?
Выделите текст и нажмите Shift+Enter.
И мы в ближайшее время ее исправим!
Счетчики
| Автоматическая настройка отслеживания для содержащихся данных |
|
Источник данных и компонент данных для связываемых данных однозначно определяют списочную коллекцию. Связываемый источник выступает в дальнейшем, как источник данных для объекта Binding, а компонент данных (в данном примере )rderDate) определяет путь внутри текущего элемента списка в источнике данных. DataSet или нет, вот в чем вопрос. В этой статье я постоянно обращаюсь к понятию набора данных (в особенности к типизированным классам наборов данных). Тема использования наборов данных в приложениях Windows Forms всегда горячо обсуждалась среди разработчиков приложений на .NET-платформе. Некоторые специалисты возражают против использования наборов данных на уровне представления, поскольку они полагают, что тем самым уровень представления смешивается с уровнем данных посредством схемы набора данных. Один из их аргументов состоит в том, что в подобной ситуации приходится использовать пользовательские рабочие объекты и коллекции на уровне представления, чтобы изолировать его от уровня данных. Конечно, эти предостережения вполне резонны для многих разработок. Но если аккуратно, обоснованно и с осторожностью пользоваться наборами данных при разработке приложений, то можно добиться существенной экономии времени, повышения производительности и упрощения сопровождения. Полностью изолировать набор данных уровня представления от действующей на уровне данных схемы набора можно путем определения набора данных, который располагается между уровнями представления и данных. Этот набор данных может заполняться на рабочем уровне или уровне доступа к данным посредством итераций над данными, извлекаемыми с уровня данных. Практически те же самые операции придется выполнять для заполнения коллекции пользовательских рабочих объектов. Использование наборов данных дает следующие преимущества: В арсенал средств разработчика включается высокофункциональный контейнер для данных с возможностью строгой типизации. Автоматическая настройка отслеживания для содержащихся данных. Интегрированная поддержка привязки к данным. Это, конечно, не значит, что во всех программах статьи используются наборы данных; многие примеры привязки к данным построены на пользовательских рабочих объектах и коллекциях. Механизмы Windows Forms одинаково эффективно поддерживают и наборы данных, и другие разновидности объектов. Если вы решились применять пользовательские объекты, то вам придется писать весь код, необходимый для создания таких объектов, с соблюдением требованиям к интерфейсу, чтобы они корректно работали в сценариях привязки к данным. В главе 9 вы убедитесь в том, что создание мощного контейнерного класса для элементов данных, реализующего функции набора данных, требует больших затрат времени. Если у вас есть предубеждение против наборов данных, следует обратиться к .NET 2.0. Многие из недостатков наборов данных в .NET 1.1 (в особенности касающиеся типизированных наборов данных) были преодолены в .NET 2.0. Ранее в этой главе мы уже говорили о том, что типизированные наборы данных являются мощным инструментом разработчика и позволяют ему в Visual Studio генерировать тысячи строк высокофункционального кода доступа к данным простым перетаскиванием элементов в конструкторе. С помощью .NET 2.0 также реализована возможность работы с таблицами, как таковыми, без необходимости создания содержащих их наборов данных. Если вы не работаете с наборами данных, то используемые коллекции будут представлять собой экземпляры других типов. Вы можете (и, вероятно, в большинстве случаев будете) использовать один из мощных контейнерных классов, входящих в состав .NET Framework. Речь идет о типах, определенных в пространстве имен System.Collections, которые позволяют сохранять объекты любых типов без ограничений. Более того, обобщенные коллекции, определенные в пространствах имен System.Collections.Generic и System.ComponentModel, позволяют определять коллекции с контролем типов. Практически во всех случаях в .NET 2.0 следует отдавать предпочтение обобщенным коллекциям перед обычными неконтролируемыми коллекциями пространства имен System.Collections. Подробнее на эту тему мы поговорим в главе 9, где разберем также вопрос применения пользовательских рабочих объектов и коллекций. Однако ряд простых примеров мы приведем еще до того, как обратимся к применению класса обобщенной коллекции BindingList<T>. Конечно, для многих сценариев привязки к данным можно применять класс List<T>, но класс Binding-List<T> все-таки лучше, если проект строится на основе Windows Forms. В главе 9 указано, что при необходимости разработчик может определить собственные классы коллекций и использовать их при реализации сценариев привязки к данным.
Newer news items:
Older news items:
|
