创建新站点时出现 ContentTypeBinding 问题。我有自定义站点模板定义,其中我引用了发布服务器功能,因此会在站点上自动创建列表页面。我需要将自定义内容类型绑定到 OOB 页面列表。有人知道该怎么做吗?我的自定义内容类型是按网站集范围内的功能部署的。
现在我试图以这种方式做到这一点,但它不起作用。在站点模板中,我引用了功能,其中包含具有内容类型绑定的元素:
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<ContentTypeBinding ContentTypeId="GUIDOFCONTENTTYPE" ListUrl="Pages" />
</Elements>
当我尝试创建新站点时出现此错误:
SPContentTypeBindingElement.ElementActivated()。将内容类型“0x010100C568DB52D9D0A14D9B2FDCC96666E9F2007948130EC3DB064584E219954237AF390045BF70D1ABCA4A5BBF576B785EB3A37D”绑定到网站“http://xxx/site”上的“/site/Pages”时发生错误。Exception '0x80070057owssvr.dll: (unresolved symbol, module offset=0000000000034256) at 0x000007FEE9954256 mscorwks.dll: (unresolved symbol, module offset=00000000002BF6D7) at 0x000007FEF61FF6D7 Microsoft.SharePoint.Library.ni.dll: (unresolved symbol, module offset=00000000000DAB02 )在 0x000007FEEEAD9AB02 Microsoft.SharePoint.ni.dll:(未解析的符号,模块偏移量=0000000001A7B029)在 0x000007FEEE8BB029 Microsoft.SharePoint.ni.dll:(未解析的符号,模块偏移量=0000000001BDCBB1)在 0x000007FEEEA1CBB1 Microsoft.SharePoint未解析的符号,
有人有这方面的经验吗?
更新:
我找到了导致我的问题的原因。它是我的内容类型中的查找字段。当我把这个查找出来时,它工作正常。但我仍然不知道如何解决它。
我的查找定义:
<Field ID="{2FF1B484-6D70-449c-8E5C-904E4D5971E1}"
Name="PageCategory"
Group="Intranet Columns"
Type="Lookup"
DisplayName="PageCategory"
List="Lists/Categories"
ShowField="Title"
PrependId="TRUE"/>
我知道,在创建此字段之前,列表类别必须存在。所以我的类别列表是在 web 范围的功能 A 中创建的,这个查找字段、内容类型 + 查找字段和内容类型绑定在另一个功能 B 中。我添加了从 B 到 A 的依赖关系。这两个功能都在 onet.xml 中引用。不幸的是,我仍然有一些问题。