【发布时间】:2011-05-11 14:56:04
【问题描述】:
我正在 SharePoint 2007 中构建一个自定义 Web 部件。它需要访问特定的列表项数据,然后设置输出的格式和样式。
我正在使用 C# 开发 Web 部件,并希望解决方案是独立的。如何从此 Web 部件访问列表数据?我可以使用 SOAP 请求并在 C# 中处理它吗?我应该通过 Web 服务(例如 getlistitems)提取列表数据吗?
【问题讨论】:
标签: c# sharepoint web-parts
我正在 SharePoint 2007 中构建一个自定义 Web 部件。它需要访问特定的列表项数据,然后设置输出的格式和样式。
我正在使用 C# 开发 Web 部件,并希望解决方案是独立的。如何从此 Web 部件访问列表数据?我可以使用 SOAP 请求并在 C# 中处理它吗?我应该通过 Web 服务(例如 getlistitems)提取列表数据吗?
【问题讨论】:
标签: c# sharepoint web-parts
由于您正在构建 SharePoint Web 部件,因此您应该通过 SPList 类访问列表及其数据。
链接文档提供了一个简短示例,说明如何从当前 SharePoint 网站正确获取列表。
【讨论】:
像这样使用对象模型:
SPList list = SPContext.Current.Web.Lists(LISTNAME);
SPQuery query = new SPQuery() { Query = "<Where>...</Where>", ViewFields = "<FieldRef Name='Title' />" };
SPListItemCollection items = list.GetItems(query);
然后只需使用 SPListItemCollection。您需要将查询文本替换为 CAML 查询(省略 <Query> 元素)。生成所需 CAML 的一种好方法是使用像这样的免费工具:
【讨论】: