SharePoint 讨论板常见的代码操作
SharePoint 讨论板常见的代码操作
我们直入主题,讨论针对SharePoint 讨论板常用的代码操作有哪些呢?
1. 你的网站集和网站:
来自CODE的代码片
SiteInstance.cs
2. 假设我们有一个名为“MyDiscussionList”的讨论板列表。
获得这个列表的GUID:
小建议:
- list.ItemCount将会返回所有讨论和答复。
- list.Items.Count将只返回答复。
3. 获得你的列表:
1 |
SPList myDiscussionList = currentRootWeb.Lists.GetList(myDiscussionListGUID, false);
|
来自CODE的代码片
GetList.cs
4. 创建新讨论:
5. 读取所有讨论:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
foreach (SPListItem folder in myDiscussionList.Folders)
{
Response.Write("Folder Name: " + folder.Name + "<BR>");
Response.Write("Folder ID: " + folder.ID + "<BR>");
Response.Write("Attachments Count: " + folder.Attachments.Count + "<BR>"); // Returns attachment count
// Code to read attachment URL.
for (int i = 0; i < folder.Attachments.Count; i++)
{
Response.Write("Attachment Url " + folder.Attachments.UrlPrefix + folder.Attachments + "<BR>");
}
// Read body of attachment
Response.Write("Body: " + folder.Fields["Body"].GetFieldValueAsText(folder["Body"]) + "<BR>");
}
|
来自CODE的代码片
ReadDiscussions.cs
6. 如果要删除一个讨论:
7.遍历所有讨论答复:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
foreach (SPListItem listItem in myDiscussionList.Items)
{
Response.Write("Item DisplayName: " + listItem.DisplayName + "<BR>"); // Returns Title of Discussion
Response.Write("List ID: " + listItem.ID + "<BR>");
Response.Write("List Folder ID: " + listItem.Fields["Parent Folder Id"].GetFieldValueAsText(listItem["Parent Folder Id"]).ToString() + "<BR>"); // Returns ID of Parent Discussion
Response.Write("Body: " + listItem.Fields["Body"].GetFieldValueAsText(listItem["Body"]) + "<BR>");
// Create Parent List Item 创建父列表项目
int parentListID = Convert.ToInt32(listItem.Fields["Parent Folder Id"].GetFieldValueAsText(listItem["Parent Folder Id"]));
SPListItem parentListItem = lvContentItemsDiscussionsList.GetItemById(parentListID);
Response.Write("Parent List Item Name: " + parentListItem.Name + "<BR>");
// Code to Reply to a Discussion Message 答复一个讨论
SPListItem reply = SPUtility.CreateNewDiscussionReply(parentListItem);
reply["Body"] = "<div><div></div><div>Reply to the new message<br><br><hr><b>From: </b>Admin<br><b>Posted: </b>Friday, July 20, 2007 4:01 AM<br><b>Subject: </b>New message<br><br><div><div>My new message content</div></div></div></div>";
reply["TrimmedBody"] = "<div><div></div><div>Reply to the new message<br></div></div>";
reply.Update();
// Code to delete a discussion reply 删除一个答复
listItemToDelete = listItem;
}
|
来自CODE的代码片
LoopThroughDiscussions.cs
8. 删除一个讨论答复:
注意:直接在SharePoint列表上做任何操作之前都要允许unsafe updates。
浙公网安备 33010602011771号