Свойство SPQuery.Query
Получает или задает внутренний XML используется в запросе.
Пространство имен: Microsoft.SharePoint
Сборка: Microsoft.SharePoint (в Microsoft.SharePoint.dll)
Синтаксис
'Декларация
Public Property Query As String
Get
Set
'Применение
Dim instance As SPQuery
Dim value As String
value = instance.Query
instance.Query = value
public string Query { get; set; }
Значение свойства
Тип: System.String
Строка, содержащая фрагмент Язык исправления для приложений совместной работы , который определяет запрос. Строка соответствует внутреннему XML-элемент запроса CAML, исключая <Query></Query> открывающих и закрывающих тегов.
Замечания
Предупреждение
Необходимо включить элемент Where . Если этого не сделать, сообщение об ошибке, но возвращается каждый элемент в списке. Помимо отрицательно влияет на производительность, это потенциально опасные сценарии при код внесены изменения для каждого возвращаемого элемента.
Примеры
В следующем примере кода используется свойство Query для определения запроса, который возвращает элементы, значения которых Field2 больше 1000.
Примечание
Сведения об использовании запросов, встроенных в язык запросов (LINQ) для извлечения элементов списка в SharePoint FoundationManaging Data with LINQ to SharePointсм.
В этом примере требуется директивы using (Imports в Microsoft Visual Basic) для пространства имен Microsoft.SharePoint и 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>");
}
}
Примечание
Некоторые объекты реализуют интерфейс IDisposable и следует избегать сохранения этих объектов в памяти, после они больше не нужны. Disposing Objectsсведения о рекомендованные методы программирования, см.