Bloque de creación: consultas y vistas
Última modificación: lunes, 05 de abril de 2010
Hace referencia a: SharePoint Foundation 2010
En este artículo
Modelo de objetos para consultas y vistas
XML usado para consultas y vistas
Modelo de objetos para el proveedor LINQ to SharePoint
XML usado para SPMetal
Áreas relacionadas con el desarrollo de consultas y vistas
Más información acerca de consultas y vistas
En Microsoft SharePoint Foundation 2010, una consulta determina qué datos de sitio o de lista se devuelven, mientras que una vista determina cómo se muestran esos datos dentro de la página. Una vista siempre contiene una consulta, pero una consulta no está siempre asociada con una vista, porque una consulta puede usarse independientemente de una vista en un contexto de código administrado. Las vistas se pueden compartir como estilos de vista entre las listas de un sitio web.
El lenguaje de marcado de aplicaciones de colaboración (CAML) ha servido tradicionalmente como el medio principal para definir consultas y vistas en SharePoint Foundation. Puede usar una cadena CAML para definir una consulta dentro del contexto del modelo de objetos de servidor o el nuevo modelo de objetos cliente. Sin embargo, SharePoint Foundation 2010 presenta un método alternativo para definir consultas que no requiere el uso de CAML. En su lugar, ahora puede consultar datos de SharePoint directamente mediante el nuevo proveedor LINQ to SharePoint, que permite consultar listas desde el código de servidor que usa la sintaxis de LINQ (Language Integrated Query). SPMetal es una herramienta de línea de comandos que puede usar para generar clases de entidad, que a su vez proporcionan una interfaz orientada a objetos para las bases de datos de contenido de SharePoint Foundation.
Modelo de objetos para consultas y vistas
Cuando trabaja con código de servidor que usa el espacio de nombres Microsoft.SharePoint, debe definir una consulta mediante la creación de instancias de un objeto SPQuery y la asignación de una cadena que contenga el CAML que define la consulta a la propiedad Query. A continuación, debe pasar el objeto SPQuery como parámetro en el método GetItems() del objeto SPList para devolver los elementos de lista especificados.
El código de cliente que usa el nuevo espacio de nombres Microsoft.SharePoint.Client (JavaScript: SP Namespace) funciona de manera similar. En el código de cliente, puede definir una consulta mediante la creación de instancias de un objeto CamlQuery (JavaScript: CamlQuery) y la asignación de una cadena de consulta CAML a la propiedad ViewXml (JavaScript: viewXml). A continuación, debe pasar CamlQuery como parámetro en el método GetItems(CamlQuery) (JavaScript: getItems) de List (JavaScript: List) para devolver los elementos de lista especificados.
Las clases más importantes que se deben usar al trabajar con vistas y consultas en los modelos de objetos de servidor y cliente incluyen las siguientes:
SPQuery: define una consulta.
Modelo de objetos de cliente: CamlQuery (JavaScript: CamlQuery).
SPView: representa una vista de datos de lista. Una vista contiene una consulta. La propiedad Views de SPList proporciona acceso a SPViewCollection de la lista.
SPViewFieldCollection: representa la colección de campos se devuelven en una vista.
Modelo de objetos de cliente: ViewFieldCollection (JavaScript: ViewFieldCollection)
SPViewStyle: representa un estilo de vista. La propiedad ViewStyles de SPWeb proporciona acceso a SPViewStyleCollection para un sitio web.
Para obtener información sobre el uso de consultas en el modelo de objetos de servidor, consulte Procedimiento para devolver elementos de una lista. Para obtener información sobre el uso de consultas en el modelo de objetos cliente, consulte Introducción a la recuperación de datos y Procedimiento para recuperar elementos de lista.
XML usado para consultas y vistas
El esquema View de CAML contiene una consulta CAML, aunque suele usarse el esquema Query en contextos fuera del esquema View. Una vista está contenida en el archivo Schema.xml de una lista, que está ubicada en la carpeta %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\FEATURE de una definición de lista. En SharePoint Foundation 2010, gran parte de la vista se define a través de XSLT en archivos .xsl ubicados en %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\LAYOUTS\XSL. Para obtener información sobre las vistas XSLT, vea Vistas de lista. SharePoint Foundation 2010 incluye nuevos elementos Joins y ProjectFields que puede contener el elemento View, lo que permite que una vista de lista incluya campos de otras listas que se han combinado con la lista principal.
Para obtener información acerca de la estructura y los elementos de los esquemas View y Query, vea Esquema View y Esquema Query.
Modelo de objetos para el proveedor LINQ to SharePoint
El espacio de nombres Microsoft.SharePoint.Linq proporciona las siguientes clases importantes que se usan para implementar el proveedor LINQ to SharePoint.
DataContext: clase principal de puerta de enlace que proporciona acceso a SharePoint Foundation y la funcionalidad para realizar consultas LINQ, escribir en las bases de datos de contenido y administrar cambios en los objetos. GetList<T>(String) devuelve un objeto EntityList<TEntity> que representa una lista que se puede consultar y SubmitChanges() escribe cambios en la base de datos de contenido.
EntityList<TEntity>: representa una lista de SharePoint Foundation que se puede consultar mediante LINQ. Además de un conjunto de otras "clases de entidad" que representan elementos de lista y valores de campo, esta lista proporciona una asignación y una interfaz relacional de objetos entre código .NET orientado a objetos y la estructura relacional de bases de datos de contenido.
EntityRef<TEntity>: clase de entidad que permite la carga aplazada y el mantenimiento de relaciones del lado del singleton de una relación uno a varios.
EntitySet<TEntity>: clase de entidad que permite la carga aplazada y el mantenimiento de relaciones del lado "varios" de relaciones uno a varios y de varios a varios.
LookupList<T>: clase de entidad que representa los valores de un campo de búsqueda (columna) que permite varios valores.
Para obtener información acerca de otras clases importantes que pueden usarse con el proveedor LINQ to SharePoint, consulte Microsoft.SharePoint.Linq. Para obtener información general y tareas de programación que describen el proveedor, consulte Administración de datos con LINQ to SharePoint.
XML usado para SPMetal
Esquema del XML de parámetros SPMetal se usa para invalidar determinados aspectos del comportamiento predeterminado de SPMetal, estableciendo en particular las entidades de base de datos de contenido que se incluyen en las clases de entidad que genera la herramienta. Para obtener más información acerca del uso de la herramienta y su esquema, vea SPMetal.
Áreas relacionadas con el desarrollo de consultas y vistas
Bloque de creación: bibliotecas de listas y documentos