Подтвердить что ты не робот

В чем разница между dataview и datatable?

В чем разница между DataView и DataTable в .NET? Насколько я понимаю, DataView - это просто ложная презентация DataTable. Когда следует использовать DataView?

Спасибо заранее.

4b9b3361

Ответ 1

Если вы хотите запустить запрос и показать подмножество данных в элементе управления, DataView может вам помочь. Это один из примеров, посмотрите на пример MSDN для DataView, в котором объясняется, где вы должны использовать DataViews с DataTables...

DataTable

A datatable - это представление в памяти одной таблицы базы данных. Вы можете думать об этом как о столбцах и строках так же. DataTable является центральным объектом в библиотеке ADO.NET. Другие объекты, использующие DataTable, включают DataSet и DataView.

Посмотрите на MSDN класс DataTable для более подробной информации.

DataView

A dataview - это представление на datatable, немного похожее на представление sql. Он позволяет фильтровать и сортировать строки - часто для привязки к элементу управления формой окна.

Кроме того, DataView может быть настроен для представления подмножества данных из DataTable. Эта возможность позволяет иметь два элемента управления, привязанные к одному и тому же DataTable, но показывающие разные версии данных. Например, один элемент управления может быть привязан к DataView, отображающему все строки в таблице, а второй может быть настроен для отображения только строк, которые были удалены из DataTable. DataTable также имеет свойство DefaultView, которое возвращает DataView по умолчанию для таблицы.

Подробнее смотрите в MSDN класс DataView.

Ответ 2

DataTable означает представление одной таблицы, тогда как DataSet - это представление в виде нескольких таблиц.

Это означает, что с помощью DataTable мы можем хранить только одну таблицу из базы данных, если мы используем DataSet, мы можем хранить несколько таблиц за раз...

DataView означает просмотр данных, доступных в DataSet... (представление таблицы доступно в DataSet) он используется для поиска записи, сортировки, фильтрации записи... с помощью DataView.

Ответ 3

вы можете иметь фильтрацию в DataTable с помощью DataView. например, если у вас есть DataSet, который включает все параметры, вы можете найти один из параметров с помощью DataView:

DataView dv = new DataView();
dv = new DataView(parameterDs.Tables[0], "ParameterName = '@" + parameter.Key + "'", string.Empty, DataViewRowState.CurrentRows);