Структура SPContentTypeId
Представляет идентификатор типа контента.
Пространство имен: Microsoft.SharePoint
Сборка: Microsoft.SharePoint (в Microsoft.SharePoint.dll)
Синтаксис
'Декларация
<SerializableAttribute> _
Public Structure SPContentTypeId _
Implements IComparable
'Применение
Dim instance As SPContentTypeId
[SerializableAttribute]
public struct SPContentTypeId : IComparable
Замечания
Идентификаторы типов контента однозначно определить тип контента и разработаны с учетом рекурсивный. Идентификатор типа контента инкапсулирует журнала преобразований типа контента или строки родительских типов контента, из которых наследуется типа контента. Каждый идентификатор типа контента содержит идентификатор родительского типа контента, который в свою очередь, содержит идентификатор родительского типа содержимого и так далее, в конечном счете обратно, включая содержимое System введите идентификатор.
For more information, see Content Type IDs and the Id property.
Примеры
В следующем примере показано консольное приложение, которая заполняет массив пять встроенных идентификаторов типов контента и подсчитывает количество потомков, которыми каждого элемента этого массива вместе с другими участниками массива. Также выводит свои строковые значения на консоль.
Imports System
Imports System.Collections.Generic
Imports Microsoft.SharePoint
Module ConsoleApp
Sub Main()
' Fill an array with SPContentTypeId objects.
Dim ids As New List(Of SPContentTypeId)
ids.Add(SPBuiltInContentTypeId.System)
ids.Add(SPBuiltInContentTypeId.Item)
ids.Add(SPBuiltInContentTypeId.Document)
ids.Add(SPBuiltInContentTypeId.BasicPage)
ids.Add(SPBuiltInContentTypeId.WebPartPage)
' Display the hex strings.
Console.WriteLine("The list has {0} content type IDs:", ids.Count.ToString())
For Each id As SPContentTypeId In ids
Console.WriteLine("{0}", id.ToString())
Next
' Show the lineage.
Console.WriteLine()
For i As Integer = 0 To ids.Count - 1
Dim parent As SPContentTypeId = ids(i)
Dim children As Integer = 0
For j As Integer = 0 To ids.Count - 1
Dim id As SPContentTypeId = ids(j)
If id.IsChildOf(parent) And id <> parent Then
children += 1
End If
Next
Console.WriteLine("{0} descendants of {1}", children.ToString(), ids(i).ToString())
Next
Console.Write(vbCrLf & "Press ENTER to continue....")
Console.Read()
End Sub
End Module
using System;
using System.Collections.Generic;
using Microsoft.SharePoint;
namespace ConsoleApp
{
class Program
{
static void Main(string[] args)
{
// Fill an array with SPContentTypeId objects.
List<SPContentTypeId> ids = new List<SPContentTypeId>
{
SPBuiltInContentTypeId.System,
SPBuiltInContentTypeId.Item,
SPBuiltInContentTypeId.Document,
SPBuiltInContentTypeId.BasicPage,
SPBuiltInContentTypeId.WebPartPage
};
// Display the hex strings.
Console.WriteLine("The list has {0} content type IDs:", ids.Count.ToString());
foreach (SPContentTypeId id in ids) Console.WriteLine("{0}", id.ToString());
// Show the lineage.
Console.WriteLine();
for (int i = 0; i < ids.Count; i++)
{
SPContentTypeId parent = ids[i];
int children = 0;
for (int j = 0; j < ids.Count; j++)
{
SPContentTypeId id = ids[j];
if (id.IsChildOf(parent) && id != parent)
children++;
}
Console.WriteLine("{0} descendants of {1}", children.ToString(), ids[i].ToString());
}
Console.Write("\nPress ENTER to continue....");
Console.Read();
}
}
}
В консоли приложение выведет следующие данные:
The list has 5 content type IDs:
0x
0x01
0x0101
0x010109
0x01010901
4 descendants of 0x
3 descendants of 0x01
2 descendants of 0x0101
1 descendants of 0x010109
0 descendants of 0x01010901
Press ENTER to continue...
Потокобезопасность
Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.
См. также
Справочные материалы
Пространство имен Microsoft.SharePoint