У меня проблема с ContentTypeBinding при создании нового сайта.У меня есть пользовательское определение шаблона сайта, где я ссылаюсь на функцию сервера публикации, поэтому список страниц автоматически создается на сайте.Мне нужно привязать пользовательский тип контента к списку страниц OOB.Кто-нибудь знает, как это сделать?Мой пользовательский тип контента развертывается с помощью функции в области семейства сайтов.
Теперь я пытаюсь сделать это таким образом, но это не работает.В шаблоне сайта я ссылаюсь на функцию, которая содержит элемент с привязкой типа контента:
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<ContentTypeBinding ContentTypeId="GUIDOFCONTENTTYPE" ListUrl="Pages" />
</Elements>
При попытке создать новый сайт я получаю эту ошибку:
SPContentTypeBindingElement.ElementActivation ().Произошла ошибка связывания типа контента «0x010100C568DB52D9D0A14D9B2FDCC96666E9F2007948130EC3DB064584E219954237AF390045BF70D1ABCA4A5BBF576B785EB3A37D» в список «/ сайта / страницы» на веб «http://xxx/site'. Exception» 0x80070057owssvr.dll: (неразрешенный символ, модуль сдвига = 0000000000034256) в 0x000007FEE9954256 mscorwks.dll: (неразрешенный символ, модуль смещения= 00000000002BF6D7) в 0x000007FEF61FF6D7 Microsoft.SharePoint.Library.ni.dll: (неразрешенный символ, смещение модуля = 00000000000DAB02) в 0x000007FEEAD9AB02 Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 0000000001A7B0000F029F070F0680F0290) 0 0 0 0 0 0).dll: (неразрешенный символ, смещение модуля = 0000000001BDCBB1) в 0x000007FEEEA1CBB1 Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 0000000001AB76AB) в 0x000007FEEE8F76AB Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля 7 = 000000)в 0x000007FEEE8F7D2A Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 0000000001AB6E1F) в 0x000007FEEE8F6E1F Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 0000000001BFCB4F) в 0x000007FEEEA3CB4F Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 0000000001BFDF52) в 0x000007FEEEA3DF52 Microsoft.SharePoint: неразрешенный вопрос (не разрешен), смещение модуля = 00000000025D073E) в 0x000007FEEF41073E Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 00000000025D0DEC) в 0x000007FEEF410DECni.dll: (неразрешенный символ, смещение модуля = 0000000001F0D8A6) в 0x000007FEEED4D8A6 Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 0000000001D2B8EE) в 0x000007FEEEB6B8EE Microsoft.SharePoint.ni.dll: неразрешенный символ = 0000AD модуль 0000 =) в 0x000007FEEE9136D4 Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 0000000001AD2F86) в 0x000007FEEE912F86 Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 00000000020D4DCD) в 0x000007FEEEF14DCD Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 00000000022B8A80) в 0x000007FEEF0F8A80 Microsoft.SharePoint.ni.dll: (неразрешенный символ, смещение модуля = 0000000001B006B6) в 0x00000 * 600E6006E6
У кого-нибудь есть такой опыт?
ОБНОВЛЕНИЕ:
Я нашел причину моей проблемы.Это поле поиска в моем типе контента.Когда я ставлю этот поиск, он работает нормально.Но я до сих пор не знаю, как ее решить.
Определение моего поиска:
<Field ID="{2FF1B484-6D70-449c-8E5C-904E4D5971E1}"
Name="PageCategory"
Group="Intranet Columns"
Type="Lookup"
DisplayName="PageCategory"
List="Lists/Categories"
ShowField="Title"
PrependId="TRUE"/>
Я знаю, что до создания этого поля список категорий должен существовать.Таким образом, мой список категорий создается в функции веб-области A, и это поле поиска, тип контента + поле поиска и привязка типа контента находятся в другой функции B. Я добавил зависимость от B до A. Обе эти функции упоминаются в onet.xml.К сожалению, у меня все еще есть какая-то проблема.