1

我在sharepoint2010工作,

我有一个自定义列表。Employees.

http://lists/employees/allitems.aspx

我在列表中做了一些过滤,所以URL会自动变成这样

http:///lists/employees/allitems.aspx?View={guid}&filterField1=fieldname&FilterValue1=123……

我想将此 URL 转换为 CAML 查询,或者以任何其他方式将过滤后的数据作为 DataTable 获取。

SharePoint SDK 中是否有任何可用功能或对此有何建议?

提前致谢。

4

3 回答 3

0

是的。有可能的。!从 CodePlex下载SharePoint CAML 查询帮助程序。这是构建 CAML 查询的非常有用的工具。

现在按照以下步骤操作:

  1. 使用所需的过滤器为您的列表创建一个视图。
  2. 打开 SharePoint CAML 查询帮助程序。
  3. 输入您的凭据,打开所需的站点。
  4. 它会在右侧加载所有列表,双击所需的列表。
  5. 单击打开列表视图
  6. 双击您之前创建的视图。
  7. 现在它将显示完整的查询,从“”中选择并在您的代码中使用它(用您的代码值替换值)。
于 2014-05-28T10:49:06.940 回答
0

你的caml查询是这样的:

     <Query> <Where> 
    <Eq> <FieldRef Name='Title' /> <Value Type='Text'>123</Value> </Eq> 
    </Where> </Query>

和你的 C# 代码:

        SPQuery query = new SPQuery();
        query.Query = caml;
        SPContext.Current.List.GetItems(query).GetDataTable();
于 2013-04-08T03:07:22.683 回答
0

经过一番搜索,我知道无法自动转换为 CAML,所以我决定自己解析。

于 2013-04-08T06:34:17.070 回答