Skip to content
/ Michaël Hompus

Now and again I come across code with hardcoded SharePoint IDs in it. Or scary loops matching a field, list or property name. SharePoint provides some classes containing the out of the box IDs, you only have to know they exist. I made an overview so nobody has to hardcode those pesky GUIDs, ContentTypeId's or property names.

Now and again I come across code with hardcoded SharePoint IDs in it. Or scary loops matching a field, list or property name.
SharePoint provides some classes containing the out of the box IDs, you only have to know they exist.
I made an overview so nobody has to hardcode those pesky GUIDs, ContentTypeIds or property names any longer.

WSS/Core - Microsoft.SharePoint.SPBuiltInFieldId

The SPBuiltInFieldId class contains 314 GUIDs for the default SharePoint fields. You can find them all on the SPBuiltInFieldId fields page, but I name some of the more common ones:

  • Created
  • Created_x0020_By
  • ID
  • Modified
  • Modified_x0020_By
  • Title
  • UniqueId

WSS/Core - Microsoft.SharePoint.SPBuiltInContentTypeId

The SPBuiltInContentTypeId class contains 34 content type IDs for the default SharePoint content types. You can find them all on the SPBuiltInContentTypeId fields page, but I name some of the more common ones:

  • Announcement
  • Document
  • Folder
  • Item
  • Task

WSS/Core - Microsoft.SharePoint.SPListTemplateType

The SPListTemplateType enumeration is more commonly known and used but what’s more special about this enumeration is to use it in combination with the SPSite.GetCatalog method.

With this method you can easily retrieve the MasterPageCatalog for the current site collection:

var site = SPContext.Current.Site;
var masterPageGallery =
site.GetCatalog(SPListTemplateType.MasterPageCatalog) as SPDocumentLibrary;
if (masterPageGallery != null)
{
// DoStuff()
}

The enumerations contain four list template IDs for the default SharePoint catalogs.

  • ListTemplateCatalog
  • MasterPageCatalog
  • WebPartCatalog
  • WebTemplateCatalog

MOSS - Microsoft.SharePoint.Publishing.FeatureIds

The FeatureIds class contains 16 GUIDs for the MOSS publishing features. You can find them all on the FeatureIds fields page, but I name the most common ones:

  • Navigation
  • Publishing

Server - Microsoft.SharePoint.Publishing.Internal.WssFeatureIds

This class is not documented and the namespace implies its internal. The WssFeatureIds class however is public and the only place the 24 WSS feature IDs are available.

Because this class is not documented I list all fields:

  • AnnouncementsList
  • BasicWebParts
  • ContactsList
  • CustomList
  • DataConnectionLibrary
  • DataSourceLibrary
  • DiscussionsList
  • DocumentLibrary
  • EventsList
  • GanttTasksList
  • GlobalContentTypes
  • GlobalFields
  • GlobalMobilityRedirect
  • GridList
  • IssuesList
  • LinksList
  • NoCodeWorkflowLibrary
  • PictureLibrary
  • SurveysList
  • TasksList
  • TeamCollaboration
  • WebPageLibrary
  • WorkflowHistoryList
  • XmlFormLibrary

Server - Microsoft.SharePoint.Publishing.FieldId

The FieldId class contains 61 GUIDs for the publishing fields. You can find them all on the FieldId properties page, but I name some of the more common ones:

  • Contact
  • PageLayout
  • PreviewImage
  • PublishingPageContent
  • PublishingPageImage
  • RollupImage

Server - Microsoft.SharePoint.Publishing.ContentTypeId

The ContentTypeId class contains 10 content type IDs for the publishing content types. You can find them all on the ContentTypeId properties page, but I name some of the more common ones:

  • ArticlePage
  • MasterPage
  • PageLayout
  • WelcomePage

MOSS - Microsoft.Office.Server.UserProfiles.PropertyConstants

The PropertyConstants class contains 42 names of the standard user profile properties. You can find them all on the PropertyConstants fields page, but I name some of the more common ones:

  • BirthDay
  • CellPhone
  • Department
  • FirstName
  • LastName
  • Manager
  • PictureUrl
  • PreferredName
  • Title
  • WorkEmail
  • WorkPhone
Filed under SharePoint
Last update: