Может кто-нибудь сказать мне, почему я бы использовал адаптер запроса в дизайнере набора данных вместо добавления запросов к адаптеру таблицы?Наборы данных. Зачем использовать адаптер запроса или адаптер таблицы?
С уважением
Может кто-нибудь сказать мне, почему я бы использовал адаптер запроса в дизайнере набора данных вместо добавления запросов к адаптеру таблицы?Наборы данных. Зачем использовать адаптер запроса или адаптер таблицы?
С уважением
Иногда ваши запросы не должны быть связаны с фактическим DataTable. Возможно, у вас есть запрос, который логически сгруппирован в вашем DataSet, но не имеет реального хранилища резервных копий.
Например, предположим, что вы хотите, чтобы вызвать хранимую процедуру, которая безопасно удаляет все связанные с ним записи для данного клиента:
proc_DeleteAllAssociatedCustomerRecords
Это действительно не принадлежит к какой-либо одной конкретной сущности поскольку он может охватывать несколько таблиц, но по-прежнему принадлежит вашему CustomerDataSet.
В дополнение к ответу Джоша, я бы добавил, что это полезно, когда у вас есть запрос выбора, который имеет другую схему, чем остальная часть таблицы. Предположим, вы хотите просто имя id & из таблицы для выпадающего списка, и в этой таблице есть много полей.
В отличие от стандартных адаптеров данных, TableAdapters могут содержать несколько запросов для заполнения связанных таблиц данных. Вы можете определить столько запросов для TableAdapter, сколько потребуется вашему приложению, если каждый запрос возвращает данные, которые соответствуют той же схеме, что и соответствующая таблица данных. Это позволяет загружать данные, которые удовлетворяют различным критериям.
В дополнение к запросам, возвращающим данные той же схемы, что и таблица данных TableAdapter, вы можете добавлять запросы, возвращающие скалярные (одиночные) значения. Например, создание запроса, возвращающего количество клиентов (SELECT Count (*) от клиентов), действителен для CustomerTableAdapter, даже если возвращаемые данные не соответствуют схеме таблицы.
http://msdn.microsoft.com/en-us/library/bz9tthwx(VS.80).aspx