У меня возник вопрос о типах контента и их идентификаторах, а также о том, как использовать их с объектной моделью.
Прежде всего, я определил некоторые столбцы сайта, тип контента с использованием этих столбцов и определение списка с использованием этого типа контента через CAML. Каждый из трех компонентов реализован как особенность. Другая функция создает экземпляр списка этого определения списка.
Поэтому, когда я пытаюсь добавить новый элемент в список, используя тип моего контента, я использую следующий код.
SPListItem listItem = list.Items.Add();
SPContentType type = list.ContentTypes[new ContentTypeId("0x010044fb4458c2eb4800825910845a35554c")];
listItem["ContentTypeId"] = type.Id;
listItem["Title"] = "Titel";
listItem.Update();
Когда я выполняю этот фрагмент кода, объект типа все еще равен нулю, также я уверен, что тип содержимого прикреплен к списку. Отладка кода и проверка типов содержимого списка показывает, что тип содержимого, прикрепленный к списку, не имеет идентификатора, определенного в определении типа содержимого (CAML). Идентификатор в экземпляре списка отличается, но начинается с идентификатора, который я определил в определении типа контента.
0x010044FB4458C2EB4800825910845A35554C 0077D683BDD9969F4E920A27C334463321
Так это поведение нормально? Я ожидал, что тип содержимого, прикрепленный к списку, будет иметь тот же идентификатор, что и в определении.
Моя главная цель - избегать использования имени типа контента для извлечения его из типов контента списка, но использовать уникальный идентификатор.
до свидания
Flo