Sharepoint 2010 如何高效地将内容类型部署到内容类型中心

Sharepoint 2010 如何高效地将内容类型部署到内容类型中心,sharepoint-2010,sharepoint-feature,sharepoint-deployment,Sharepoint 2010,Sharepoint Feature,Sharepoint Deployment,我已经建立了一个内容类型中心,并通过创建一个测试内容类型并观察它被发布到客户端站点来测试联合是否正常工作 然后,我部署了我实际上感兴趣的内容类型(通过功能)以及它们所依赖的站点列发布到中心 我得到了错误 无法将内容类型“…”发布到此网站,因为未启用功能“…”。 我想部署具有可升级性和易于在dev、qual和prod环境之间移植的功能的内容类型。但我还不明白中心的好处是什么 如果我必须激活部署功能,在发布之前,内容类型将已经在站点上。如果我必须使用web UI在Hub站点上手动创建内容类型(糟糕!

我已经建立了一个内容类型中心,并通过创建一个测试内容类型并观察它被发布到客户端站点来测试联合是否正常工作

然后,我部署了我实际上感兴趣的内容类型(通过功能)以及它们所依赖的站点列发布到中心

我得到了错误

无法将内容类型“…”发布到此网站,因为未启用功能“…”。

我想部署具有可升级性和易于在dev、qual和prod环境之间移植的功能的内容类型。但我还不明白中心的好处是什么

如果我必须激活部署功能,在发布之前,内容类型将已经在站点上。如果我必须使用web UI在Hub站点上手动创建内容类型(糟糕!),那么我就有一个问题,那就是试图手动保持三个景观的同步


是否有一种方法可以在仍然使用中心发布内容类型的同时有效地管理中心的内容类型部署?

使用内容类型中心的优势在于,它允许您在整个服务器场的多个网站集和Web应用程序上使用和重用您的内容类型

由于您的所有网站集现在都在使用相同的联合内容类型的实例,因此,如果将来需要在内容类型中添加/删除/重命名列,这与更新内容类型和重新订阅一样简单(然后允许sharepoint运行其计时器作业,并再次检查更改是否已更新,因为您是一名谨慎的sharepoint管理员)

我不确定您收到的是哪一个错误,因为您的帖子中没有足够的上下文。但是,我认为您可能对联合内容类型的发布方式有点困惑。首先,您在网站集上打开内容联合中心发布功能,该功能保存您将在整个网站中重复使用的所有内容类型您的服务器场。接下来,您将配置混合元数据服务,以便SharePoint或多或少地将您的每种内容类型加载到内存中

完成此步骤后,您可以选择要订阅syndication hub的网站集。为此,您需要打开内容类型发布网站集功能。注意:如果您的网站使用空白模板,您可能会收到如上所述的功能错误,原因是“缺陷”使用空白模板。请参阅我的帖子:

只有在打开订阅功能且内容类型中心计时器作业已运行且订阅计时器作业已运行后,您的网站集才能看到可用的内容类型

至于在中心网站上手动创建内容类型,唯一的OOB方法是使用UI。就我个人而言,我编写了一个实用程序,它完成了我刚才为我描述的所有工作,从创建初始内容类型到创建联合中心,将其发布到所有网站集,以及大部分时间消耗性地关联我对订阅网站上的所有列表和库都很熟悉。我本来打算让我的雇佣公司出售它,但他们似乎不感兴趣,如果有足够的兴趣,我可以将其开源


希望这有帮助。

这看起来确实是中心的一个缺点。 我以前见过

如果已将内容类型部署到中心,请检查内容类型元素的INHERITS标记是否设置为TRUE。否则,它将无法在中心中工作

<ContentType ID="xxxxx"
    Name="xxxx"
    Group="xxxx"
    Description="xxxx"
    Inherits="TRUE"
    Version="0">
</ContentType>

不要忘记,您实际上可以在服务器场之间同步内容类型——当您在单独的服务器场上开发并且不想与管理内容类型的PnP框架发生冲突时,这一点尤其重要……在某些情况下,内容类型可能已经存在于生产服务器场中,您需要在服务器场上复制它们开发和/或测试