SPBuiltInContentTypeId Class
A class that retrieves SPContentTypeId objects that represent identifiers (IDs) for built-in content types.
Inheritance Hierarchy
System.Object
Microsoft.SharePoint.SPBuiltInContentTypeId
Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
Public NotInheritable Class SPBuiltInContentTypeId
Dim instance As SPBuiltInContentTypeId
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
public sealed class SPBuiltInContentTypeId
Remarks
You can use the fields of this class in a way that is similar to the way that you use members of an enumeration.
Examples
The following example shows a console application that finds both the common parent of two content type IDs and the name of the parent content type. It also prints the result to the console.
Imports System
Imports Microsoft.SharePoint
Module Test
Sub Main()
Using site As SPSite = New SPSite("http://localhost")
Using web As SPWeb = site.OpenWeb()
Dim x As SPContentTypeId = SPBuiltInContentTypeId.Message
Dim y As SPContentTypeId = SPBuiltInContentTypeId.Discussion
' Get the parent content type ID.
Dim parentId As SPContentTypeId = SPContentTypeId.FindCommonParent(x, y)
' Get the parent content type name.
Dim ct As SPContentType = web.AvailableContentTypes(parentId)
Dim parentName As String = ct.Name
' Display the result.
Console.WriteLine("ID of Message is {0}", x.ToString())
Console.WriteLine("ID of Discussion is {0}", y.ToString())
Console.WriteLine("Their common parent is {0} ({1})", _
parentId.ToString(), parentName)
End Using
End Using
Console.Write(vbCrLf + "Press ENTER to continue...")
Console.ReadLine()
End Sub
End Module
using System;
using Microsoft.SharePoint;
namespace Test
{
class ConsoleApp
{
static void Main(string[] args)
{
using (SPSite site = new SPSite("http://localhost"))
{
using (SPWeb web = site.OpenWeb())
{
SPContentTypeId x = SPBuiltInContentTypeId.Message;
SPContentTypeId y = SPBuiltInContentTypeId.Discussion;
// Get the parent content type ID.
SPContentTypeId parentId = SPContentTypeId.FindCommonParent(x, y);
// Get the parent content type name.
SPContentType ct = web.AvailableContentTypes[parentId];
string parentName = ct.Name;
// Display the result.
Console.WriteLine("ID of Message is {0}", x.ToString());
Console.WriteLine("ID of Discussion is {0}", y.ToString());
Console.WriteLine("Their common parent is {0} ({1})",
parentId.ToString(), parentName);
}
}
Console.Write("\nPress ENTER to continue...");
Console.ReadLine();
}
}
}
The application prints the following output to the console.
ID of Message is 0x0107
ID of Discussion is 0x012002
Their common parent is 0x01 (Item)
Press ENTER to continue...
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.
See Also
Reference
SPBuiltInContentTypeId Members
Microsoft.SharePoint Namespace