В Visual Studio имеется визуальный конструктор, предназначенный исключительно для редактирования (и создания) типизированных наборов данных: это DataSet Designer. Этот визуальный конструктор запускается автоматически тогда, когда вы открываете элемент проекта DataSet (такой как файл AdventureWorksEmployeeDataSet.xsd, который мы только что создали при исследовании привязки данных).
Примечание
Типизированные объекты DataSet могут очень существенно повысить производительность по сравнению с нормальными наборами данных: вместо использования индексов коллекций вы можете ссылаться на таблицы и столбцы по их реальным именам. Кроме того, технология IntelliSense работает с членами типизированных DataSet, что значительно облегчает кодирование больших иерархических объектов данных.
Конструктор DataSet Designer можно легко использовать для настройки наборов данных (путем изменения любых их компонентов, в том числе и запросов для заполнения наборов данных). На рис. 18.36 показан открытый в DataSet Designer созданный ранее AdventureWorksEmployeeDataSet.
Обратите внимание, что здесь визуально представлен каждый элемент набора данных и для выполнения изменений мы можем взаимодействовать с этими элементами. Например, если мы хотим изменить запрос, который изначально создали при помощи мастера Data Set Configuration Wizard, то мы должны просто щелкнуть правой кнопкой мыши по таблице Employee на поверхности конструирования и выбрать Configure для повторного запуска редактора запросов.
В обсуждаемом нами сценарии мы подключаем набор данных напрямую к результатам запроса SQL — но мы также можем использовать конструктор DataSet Designer для создания новых, "непривязанных" наборов данных. Добавление элемента проекта DataSet в наш проект позволит нам начать с чистого листа, добавляя в набор данных таблицы, запросы и т. п. для удовлетворения потребностей нашего приложения в данных. Это особенно полезно для тех приложений, которые читают и пишут данные, но не обязательно взаимодействуют с базой данных. Такие файлы наборов данных могут использоваться как простой способ хранения. Затем они могут быть легко привязаны к реляционной базе данных.