Определение списка Sharepoint, которое привязывается только к моему пользовательскому типу контента - PullRequest
1 голос
/ 03 апреля 2009

Я разрабатываю решение Sharepoint, которое реализует новый список. В этом списке есть получатель событий, связанный с типом пользовательского содержимого.

Я использую VSeWSS 1.3 для этой задачи, и все идет нормально (создается тип контента, создается список и привязывается к типу контента, приемник событий срабатывает успешно.

Меня беспокоит только то, что в созданном списке всегда отображается базовый тип контента (элемент CT с полем заголовка). Через веб-интерфейс я могу скрыть этот тип контента, но не могу найти, где это сделать, в моих определениях XML или сделать это в решении, чтобы избежать двойных задач при развертывании.

Есть предложения ??

Ответы [ 3 ]

1 голос
/ 06 апреля 2009

В schema.xml необходимо внести 2 изменения

в элементе добавьте следующий атрибут:

EnableContentTypes="TRUE"

элемент должен содержать элемент , который указывает ваш пользовательский тип контента.

например:

<?xml version="1.0"?>
<List 
  xmlns:ows="Microsoft SharePoint" 
  Title="List_Title" 
  FolderCreation="FALSE" 
  Direction="$Resources:Direction;" 
  Url="Lists/List_Title" 
  BaseType="0" 
  Name="List_Title" 
  Id="51D716AC-DF9D-4ebb-9F8E-9134EEBB7C39" 
  Type="100" 
  xmlns="http://schemas.microsoft.com/sharepoint/"
  EnableContentTypes="TRUE"
>
  <MetaData>
    <ContentTypes>
      <ContentTypeRef ID="0x01..." />
    </ContentTypes>
1 голос
/ 03 апреля 2009

Вам нужно будет отредактировать Schema.xml для своего пользовательского списка. Найдите тег <ContentTypes> и удалите все, что вы не хотите отображать.

В вашем определении списка будет указатель (например, <Elements Id="0a8594c8-5cf1-492e-88ce-df943830c88c"), который будет указывать список из XML-схемы (например, <List Name="... ...Id="0a8594c8-5cf1-492e-88ce-df943830c88c">)

Я не уверен, для чего нужна реализация, обычно есть файл feature.xml для объединения предыдущих файлов xml (например, <ElementManifests><ElementManifest Location="MyFeature\ListDefinition.xml" /><ElementFile Location="MyFeature\schema.xml" />)

0 голосов
/ 17 апреля 2009

Мне помогли оба ответа, но я также обнаружил, что вам нужно снова указать столбцы в определении списка (не только в типе содержимого), потому что в противном случае они не будут отображаться в списке.

...