Geo*_*ge2 2 .net c# asp.net sharepoint-2007 visual-studio-2008
我正在将SharePiont Server 2007企业版与Windows Server 2008企业版一起使用,并且正在使用发布门户网站模板。我正在使用VSTS 2008 + C#+ .Net 3.5开发。我已经在SharePoint网站上手动定义了一个自定义列表(自定义列表的所有列类型都是SharePoint内置类型),并且我想定义一些自定义规则来筛选此列表以仅显示列表的一部分。有参考代码吗?
EDIT1:这是我当前的代码。我已使用此类代码来检索所需的项目,但是如何在SharePoint列表中显示重新绑定的项目?
SPSite oSiteCollection = SPContext.Current.Site;
SPList oList = oSiteCollection.AllWebs[0].Lists["PeopleTest"];
SPQuery oQuery = new SPQuery();
oQuery.Query = "<Where><Eq><FieldRef Name='Department'/>" +
"<Value Type='Text'>Computer</Value></Eq></Where>";
SPListItemCollection collListItems = oList.GetItems(oQuery);
foreach (SPListItem oListItem in collListItems)
{
writer.Write(oListItem["Department"].ToString()+"###");
}
Run Code Online (Sandbox Code Playgroud)
如果您使用的服务器(即不是客户端)的dll,您可以使用SPList.GetItems方法与SPQuery作为参数:
SPSite oSiteCollection = SPContext.Current.Site;
SPList oList = oSiteCollection.AllWebs["Site_Name"].Lists["List_Name"];
SPQuery oQuery = new SPQuery();
oQuery.Query = "<Where><Eq><FieldRef Name='Schedule'/>" +
"<Value Type='CHOICE'>2 weeks</Value></Eq></Where>";
SPListItemCollection collListItems = oList.GetItems(oQuery);
foreach (SPListItem oListItem in collListItems)
{
Label1.Text += SPEncode.HtmlEncode(oListItem["Title"].ToString())
+ " -- " + SPEncode.HtmlEncode(oListItem["EndDate"].ToString())
+ "<BR>";
}
Run Code Online (Sandbox Code Playgroud)
请注意,foreach此示例代码的一部分仅以HTML格式显示数据。您可以使用与当前相同的渲染。关键是使用SPQuery和.GetItems(...)。
如果您使用客户端dll,请参阅此链接以及MSDN上的其他链接(此链接仅是一个示例,与SharePoint Team Services客户端API相关)。