de la propiedad SPQuery.Query
Obtiene o establece el interno que utiliza XML en la consulta.
Espacio de nombres: Microsoft.SharePoint
Ensamblado: Microsoft.SharePoint (en Microsoft.SharePoint.dll)
Sintaxis
'Declaración
Public Property Query As String
Get
Set
'Uso
Dim instance As SPQuery
Dim value As String
value = instance.Query
instance.Query = value
public string Query { get; set; }
Valor de propiedad
Tipo: System.String
Una cadena que contiene un fragmento en Lenguaje de marcado de aplicaciones de colaboración que define la consulta. La cadena corresponde al XML interno del elemento Query en CAML, excepto las etiquetas de apertura y cierre <Query></Query> .
Comentarios
Advertencia
Debe incluir un elemento Where . Si no lo hace, no hay ningún mensaje de error, pero se devuelven todos los elementos de la lista. Además de afectar negativamente al rendimiento, éste es un escenario potencialmente peligroso cuando el código hace un cambio para cada elemento devuelto.
Ejemplos
En el ejemplo de código siguiente se utiliza la propiedad Query para definir una consulta que devuelve los elementos cuyos valores de Field2 son mayores que 1000.
Nota
Para obtener información acerca de cómo usar las consultas de Language-Integrated Query (LINQ) para recuperar elementos de lista en SharePoint Foundation, consulte Managing Data with LINQ to SharePoint.
En este ejemplo se requieren using directivas (Imports en Microsoft Visual Basic) para los espacios de nombres Microsoft.SharePoint y Microsoft.SharePoint.Utilities .
Dim webSite As SPWeb = SPContext.Current.Site.RootWeb
Try
Dim list As SPList = webSite.Lists("List_Name")
Dim query As New SPQuery()
query.ViewFields = "<FieldRef Name='Field1'/>" + _
"<FieldRef Name='Field2'/>"
query.Query = "<Where><Geq><FieldRef Name='Field2'/>" + _
"<Value Type='Number'>1000</Value></Geq></Where>"
Dim items As SPListItemCollection = list.GetItems(query)
Dim item As SPListItem
For Each item In items
Response.Write((SPEncode.HtmlEncode(item.Xml) + "<BR>"))
Next item
Finally
webSite.Dispose()
End Try
using (SPWeb oWebsiteRoot = SPContext.Current.Site.RootWeb)
{
SPList oList = oWebsiteRoot.Lists["List_Name"];
SPQuery oQuery = new SPQuery();
oQuery.ViewFields = "<FieldRef Name='Field1'/>" +
"<FieldRef Name='Field2'/>";
oQuery.Query = "<Where><Geq><FieldRef Name='Field2'/>" +
"<Value Type='Number'>1000</Value></Geq></Where>";
SPListItemCollection collListItems = oList.GetItems(oQuery);
foreach (SPListItem oListItem in collListItems)
{
Response.Write(SPEncode.HtmlEncode(oListItem.Xml) + "<BR>");
}
}
Nota
Determinados objetos implementan la interfaz de IDisposable y, a continuación, se debe evitar la conservación de estos objetos en la memoria que ya no se necesitan. Para obtener información acerca de buenas prácticas de codificación, vea Disposing Objects.