SPDocDiscussion Class
Represents all the discussions associated with a single document that has been discussed in a document library.
Inheritance Hierarchy
System.Object
Microsoft.SharePoint.SPDocDiscussion
Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
Public Class SPDocDiscussion
Dim instance As SPDocDiscussion
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
public class SPDocDiscussion
Examples
The following code example iterates through the collection of document discussions for a document library and sends e-mail notification to a specified address if the total number of comments made about a document is greater than 20.
This example requires using directives (Imports in Visual Basic) for the Microsoft.SharePoint and Microsoft.SharePoint.Utilities namespaces.
Dim site As SPWeb = SPControl.GetContextWeb(Context)
Dim Msg As String = ""
Dim discs As SPDocDiscussionCollection = site.GetDocDiscussions("Document_Library_Name")
Dim disc As SPDocDiscussion
For Each disc In discs
If disc.CommentCount > 20 Then
Msg = "The file <A href='" & disc.DocUrl.ToString() & "'>" &
disc.DocUrl.ToString() & "</A> has received " _
& disc.CommentCount.ToString() & " comments."
SPUtility.SendEmail(site, False, False, "e-mail_address",
"Web Discussion Report", Msg)
End If
Next disc
SPWeb oWebsite = SPContext.Current.Web;
string Msg = "";
SPDocDiscussionCollection collDiscussions = oWeb.GetDocDiscussions("Document_Library_Name");
foreach (SPDocDiscussion oDiscussion in collDiscussions)
{
if (oDiscussion.CommentCount > 20)
{
Msg = "The file <A href='" + oDiscussion.DocUrl.ToString() + "'>"
+ oDiscussion.DocUrl.ToString() +
"</A> has received " + oDiscussion.CommentCount.ToString()
+ " comments.";
SPUtility.SendEmail(oWebsite, false, false, "e-mail_address",
"Web Discussion Report", Msg);
}
}
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.