SPQuery.ViewXml 属性

获取或设置用于定义视图的 XML 架构。

命名空间:  Microsoft.SharePoint
程序集:  Microsoft.SharePoint(位于 Microsoft.SharePoint.dll 中)

语法

声明
Public Property ViewXml As String
    Get
    Set
用法
Dim instance As SPQuery
Dim value As String

value = instance.ViewXml

instance.ViewXml = value
public string ViewXml { get; set; }

属性值

类型:System.String
一个字符串,包含协作应用程序标记语言中的视图模式。

备注

ViewXml属性包含对应于 CAML 的视图元素的内部 XML 字符串。

备注

有关如何使用语言集成查询 (LINQ) 查询来检索SharePoint Foundation中的列表项的信息,请参阅Managing Data with LINQ to SharePoint

示例

下面的代码示例使用ViewXml属性可以定义一个查询中 CAML。

此示例要求using指令 (Imports Microsoft Visual Basic 中) 为Microsoft.SharePointMicrosoft.SharePoint.Utilities的命名空间。

Dim webSite As SPWeb = SPContext.Current.Site.AllWebs("Site_Name")
Try
    Dim list As SPList = webSite.Lists("List_Name")

    Dim query As New SPQuery()
    query.ViewXml = "<View><Query><OrderBy><FieldRef Name='ID'/>" + _
        "</OrderBy><Where><Or><Geq><FieldRef Name='Field1'/>" + _
        "<Value Type='Number'>1500</Value></Geq><Leq>" + _
        "<FieldRef Name='Field2'/><Value Type='Number'>500</Value>" + _
        "</Leq></Or></Where></Query><ViewFields>" + _
        "<FieldRef Name='Title'/>" + _
        "<FieldRef Name='Field1'/><FieldRef Name='Field2'/>" + _
        "<FieldRef Name='Field3'/><FieldRef Name='Field4'/>" + _
        "</ViewFields><RowLimit>100</RowLimit></View>"
    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 oWebsite = SPContext.Current.Site.AllWebs["Site_Name"])
{
    SPList oList = oWebsite.Lists["List_Name"];

    SPQuery oQuery = new SPQuery();

    oQuery.ViewXml = "<View><Query><OrderBy><FieldRef Name='ID'/>" +
        "</OrderBy><Where><Or><Geq><FieldRef Name='Field1'/>" +
        "<Value Type='Number'>1500</Value></Geq><Leq>" +
        "<FieldRef Name='Field2'/><Value Type='Number'>500</Value>" +
        "</Leq></Or></Where></Query><ViewFields>" + 
        "<FieldRef Name='Title'/>" +
        "<FieldRef Name='Field1'/><FieldRef Name='Field2'/>" +
        "<FieldRef Name='Field3'/><FieldRef Name='Field4'/>" +
        "</ViewFields><RowLimit>100</RowLimit></View>";
    SPListItemCollection collListItemsAvailable = oList.GetItems(oQuery);

    foreach (SPListItem oListItemAvailable in collListItemsAvailable)
    {
        Response.Write(SPEncode.HtmlEncode(oListItemAvailable.Xml) + 
          "<BR>");
    }
}

备注

某些对象实现IDisposable接口,并必须避免后不再需要保留这些对象在内存中。好的编码做法有关的信息,请参阅Disposing Objects

另请参阅

引用

SPQuery 类

SPQuery 成员

Microsoft.SharePoint 命名空间