SharePoint 2010: RemoveFieldRef and Inherits = «TRUE»

Я создал настраиваемый тип контента, который наследуется от типа контента OOTB SharePoint Picture . Единственные изменения, которые я сделал, - это добавить простое поле URL-адреса и удалить два поля из базового типа. См. Ниже:

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
    <!-- Parent ContentType: Picture (0x010102) -->
    <ContentType ID="0x0101020027f16ab27e6e45a6848c25c47aaa7053"
                 Name="Custom Picture"
                 Description=""
                 Group="Custom"
                 Inherits="TRUE"
                 Version="0">
        <FieldRefs>
            <RemoveFieldRef ID="{b66e9b50-a28e-469b-b1a0-af0e45486874}" Name="Keywords" />
            <RemoveFieldRef ID="{a5d2f824-bc53-422e-87fd-765939d863a5}"  Name="ImageCreateDate" />
            <FieldRef ID="{c29e077d-f466-4d8e-8bbe-72b66c5f205c}" Name="URL" DisplayName="URL" Required="FALSE" />
        </FieldRefs>
    </ContentType>
</Elements>

Если я создаю библиотеку изображений на основе своего настраиваемого типа содержимого, поле «URL», которое я добавил, появляется в формах создания / редактирования, однако два поля, которые я пытался удалить, также отображаются, т. Е. RemoveFieldRef игнорируется . Если я посмотрю на тип контента в «Настройки сайта -> Галерея типов контента» , эти два поля все еще будут там перечислены.

Установка Inherits = "FALSE" в моем настраиваемом типе контента ( см. Определение MSDN ) успешно удаляет только эти два поля с "сайта Настройки -> Галерея типов контента ", однако тогда ни одно базовых полей не отображается в новых / редактируемых формах - только мое настраиваемое поле« URL ».

Что я могу сделать, чтобы гарантировать, что все поля из базового типа контента «Изображение» отображаются в новых / редактируемых формах моей библиотеки изображений, за исключением двух полей, которые я специально удалил?

7
задан Nick Larter 23 February 2011 в 11:40
поделиться