Realización de consultas desde el código del lado servidor

Última modificación: martes, 02 de febrero de 2010

Hace referencia a: SharePoint Foundation 2010

En este artículo
Consultas usando CAML y SPQuery
Consultas usando el proveedor LINQ to SharePoint
CAML frente a LINQ

Este tema proporciona información general sobre las diferencias entre las dos formas de consultar datos de Microsoft SharePoint Foundation en código del lado servidor.

Consultas usando CAML y SPQuery

Puede consultar cualquier tipo de datos de SharePoint Foundation, incluidos datos que no sean de listas, usando el modelo de objetos de servidor regular. La clase más importante para consultar es SPQuery. Partes de consultas escritas en Lenguaje de marcado de la aplicación de colaboración (CAML) se asignan a las propiedades Query, Joins, ProjectedFields y ViewFields de un objeto SPQuery. A continuación, el objeto se pasa a un método como SPList.GetItems() que devuelve los elementos consultados.

Para obtener ejemplos, vea Trabajar con objetos de listas y colecciones y Procedimiento para devolver elementos de una lista.

Consultas usando el proveedor LINQ to SharePoint

Puede consultar datos de lista de SharePoint Foundation, y solo datos de lista, usando el proveedor LINQ to SharePoint. Las consultas se escriben con sintaxis de LINQ y los resultados se asignan a un objeto de devolución. La consulta se ejecuta la primera vez que se enumera el objeto de devolución. En ese momento, el proveedor LINQ to SharePoint traduce la consulta a una consulta CAML y, a continuación, se procesa como cualquier otra consulta CAML. Para obtener más información, vea los temas del nodo Administración de datos con LINQ to SharePoint.

CAML frente a LINQ

La principal ventaja de las consultas CAML es que pueden mejorar el rendimiento, ya que no es necesario traducir la consulta de sintaxis de LINQ a sintaxis CAML.

Las principales ventajas de usar consultas LINQ incluyen, entre otras:

  • Puede usar sintaxis de LINQ y las palabras clave de LINQ integradas en C# y Microsoft Visual Basic. En cambio, el XML CAML es propenso a errores y solo se aplica a SharePoint Foundation.

  • Con el proveedor LINQ to SharePoint, se trabaja con objetos de elementos de lista fuertemente tipados. En el modelo de objetos cliente de SharePoint Foundation, dos objetos SPListItem cualesquiera son del mismo tipo, aunque representen elementos de tipos de listas considerablemente diferentes. No obstante, el proveedor LINQ to SharePoint usa clases de entidades, incluida una clase para cada tipo de contenido usado en cualquier lista de un sitio web. Por ejemplo, un elemento de la lista de anuncios es un objeto del tipo Announcement y un elemento de la lista de tareas es un objeto del tipo Task.

Vea también

Referencia

Elemento Query (Lista)

Conceptos

Esquema Query

Consulta desde el código del lado cliente