«Замена» используется либо с помощью набора данных DataSet (используйте «Добавить-> Новый элемент» и выберите «DataSet», затем перетащите таблицы, представления или хранимые процедуры на поверхность дизайна). Или Entity Framework/LINQ для сущностей.
И, да, это изменилось в VS2005.
Небольшое исследование заставило меня задуматься, потому что «это работает для меня».
- Открыть простой класс проект библиотеки
- правой кнопкой мыши и выберите «Добавить -> Компонент». Компонент создается и отображается знакомая поверхность дизайна компонента.
- Просмотреть панель инструментов. Обратите внимание, что SqlCommand и т. Д. На нем нет. Щелкните правой кнопкой мыши на панели инструментов и выберите «Выбрать элементы».
- Введите «System.Data» в поле фильтра. Это поможет вам найти всех ваших старых друзей «SqlConnection», «SqlCommand», «SqlDataAdapter» и даже «DataSet» и «DataView». Выделите их все и нажмите «Ok».
- Перетащите SqlConnection на поверхность дизайна. Настройте его как обычно.
- Перетащите SqlCommand на поверхность дизайна, настройте как обычно. Я даже установил свойство Connection, чтобы указать на мой первый SqlConnection.
- Перетащите «SqlDataAdapter» на поверхность дизайна. Появится нормальное диалоговое окно «Конфигурировать данные». Настройте адаптер, выберите «Создать DataSet» и т. Д.
- Сохраните компонент, а затем закройте его.
- Откройте компонент снова. Все эти штуки все еще присутствуют.
Что вы пытались, чтобы это не сработало?
Мы действительно используем типизированные DataSets. Я имею в виду не объект переноса данных (DataSet), а доступ к данным (класс компонентов). Раньше вы могли отбрасывать адаптеры, соединения, команды и т. Д. Из Server Explorer на поверхность класса компонентов. Теперь вы не можете. Я ищу замену для этого, а не объект переноса данных. –
Я действительно имел в виду типизированные DataSets. Новый конструктор DataSet создаст строго типизированный класс TableAdapter, который делает то, что использовал класс DataAdapter, но строго типизированным образом. Попробуйте то, что я предложил. Новый DataSet, перетащите таблицы и перетащите хранимые процедуры. Посмотрите на сгенерированный код. Посмотрите, что там. –
Ах, мое замешательство возникло из-за использования «типизированных наборов данных», которые могут использоваться и, как правило, без TableAdapters.Зная, что вы действительно имели в виду TableAdapters, он очищает его для меня, хотя он еще не отвечает на мой вопрос. Меня больше интересует, как использование класса компонентов изменилось для доступа к данным, чем я еще в процессе реорганизации моего решения. Любая идея, как и когда класс компонента изменился в отношении объектов базы данных? –