开发包含其他文档内容类型的自定义文档集内容类型

时间:2012-06-05 18:28:15

标签: visual-studio-2010 sharepoint sharepoint-2010 sharepoint-api document-set

我在Visual Studio中成功创建并部署了几种新的内容类型。一个基于文档集,其他基于文档。我想要做的是指定文档集的“默认内容类型”,“共享列”。我还想将我的添加文档类型指定为文档集的“允许的内容类型”列表。我知道如何在SharePoint UI中执行此操作。我如何通过Visual Studio项目完成此任务?

1 个答案:

答案 0 :(得分:1)

我找到了解决方案,感谢Google将我与更聪明的人联系起来。在文档集的内容类型中,您需要指定XMLDocuments元素。

<XmlDocuments>
  <!-- List of all fields [site columns] shared between all content types and the document set. -->
  <XmlDocument NamespaceURI="http://schemas.microsoft.com/office/documentsets/sharedfields">
    <sf:SharedFields xmlns:sf="http://schemas.microsoft.com/office/documentsets/sharedfields" LastModified="1/1/2010 08:00:00 AM">
      <!-- Add shared fields here using the syntax below-->
      <!--<SharedField id="00000000-0000-0000-0000-000000000000" />-->
    </sf:SharedFields>
  </XmlDocument>
  <!-- List of all content types that are allowed in the document set. -->
  <XmlDocument NamespaceURI="http://schemas.microsoft.com/office/documentsets/allowedcontenttypes">
    <act:AllowedContentTypes xmlns:act="http://schemas.microsoft.com/office/documentsets/allowedcontenttypes" LastModified="1/1/2010 08:00:00 AM">
      <!-- Add content types that will be used in the document set using the syntax below -->
      <!--<AllowedContentType id="00000000-0000-0000-0000-000000000000" />-->
    </act:AllowedContentTypes>
  </XmlDocument>
  <!-- List of all fields [site columns] that should appear on welcome page. -->
  <XmlDocument NamespaceURI="http://schemas.microsoft.com/office/documentsets/welcomepagefields">
    <wpFields:WelcomePageFields xmlns:wpFields="http://schemas.microsoft.com/office/documentsets/welcomepagefields" LastModified="1/1/2010 08:00:00 AM">
      <!-- Add welcome fields here using the syntax below -->
      <!--<WelcomePageField id="00000000-0000-0000-0000-000000000000" />-->
    </wpFields:WelcomePageFields>
  </XmlDocument>
  <!-- List of all default documents associated with the content types. -->
  <XmlDocument NamespaceURI="http://schemas.microsoft.com/office/documentsets/defaultdocuments">
    <dd:DefaultDocuments xmlns:dd="http://schemas.microsoft.com/office/documentsets/defaultdocuments" AddSetName="TRUE" LastModified="1/1/2010 08:00:00 AM">
      <DefaultDocument idContentType="0x010100c462526dfcb94db3ab99dc52649a7f66" name="Template.docx" />
    </dd:DefaultDocuments>
  </XmlDocument>

  <XmlDocument NamespaceURI="http://schemas.microsoft.com/sharepoint/v3/contenttype/forms">
    <FormTemplates  xmlns="http://schemas.microsoft.com/sharepoint/v3/contenttype/forms">
      <Display>ListForm</Display>
      <Edit>ListForm</Edit>
      <New>NewForm</New>
    </FormTemplates>
  </XmlDocument>