2011-09-12 18 views
33

¿Cuál es la diferencia entre DataView y DataTable en .Net? Por lo que tengo entendido, DataView es solo una presentación falsa de DataTable. ¿Cuándo debería usar DataView?¿Cuál es la diferencia entre dataview y datatable?

Gracias de antemano.

+0

BTW, consulte http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be-removed-from-posts –

Respuesta

37

Cuando desee ejecutar una consulta y mostrar el subconjunto de datos en un control, un DataView podría ayudarlo. Eso es sólo un ejemplo, mira el MSDN example for DataView, que explica donde se debe utilizar DataViews con tablas de datos ...

DataTable

Una tabla de datos es una representación en memoria de una sola tabla de base de datos. Puede pensar que tiene columnas y filas de la misma manera. DataTable es un objeto central en la biblioteca ADO.NET. Otros objetos que usan DataTable incluyen DataSet y DataView.

Mire MSDN El DataTable class para más detalles.

DataView

A DataView es una vista en una tabla de datos, un poco como una vista de SQL. Le permite filtrar y ordenar las filas, a menudo para vincularlas a un control de formulario de Windows.

Además, un DataView se puede personalizar para presentar un subconjunto de datos del DataTable. Esta capacidad le permite tener dos controles vinculados al mismo DataTable, pero mostrando diferentes versiones de los datos. Por ejemplo, un control puede estar vinculado a un DataView que muestra todas las filas en la tabla, mientras que un segundo puede configurarse para mostrar solo las filas que se han eliminado del DataTable. El DataTable también tiene una propiedad DefaultView que devuelve el DataView predeterminado para la tabla.

Consulte MSDN DataView class para obtener más información.

4

puede filtrar en DataTable con DataView. por ejemplo, si usted tiene un conjunto de datos que incluye todos los parámetros se puede encontrar uno de los parámetros con DataView:

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

DataTable significa la representación única tabla mientras que un DataSet es una representación múltiple de mesa.

Eso significa que mediante el uso de DataTable podemos mantener sólo una única tabla de la base de datos, si utilizamos DataSet podemos retener varias mesas a la vez ...

DataView significa vista de los datos disponibles en DataSet ... (vista de la tabla disponible en DataSet) se usa para encontrar un registro, ordenar, filtrar el registro ... usando DataView.

+4

Por favor, formatee y aclare su respuesta. No es necesario gritar con todas las gorras. – laalto

+0

esto tiene baja legibilidad debido a todas las mayúsculas, y quién querría de todos modos? –

Cuestiones relacionadas