Активация функций SharePoint - значение не попадает в ожидаемый диапазон

StackOverflow https://stackoverflow.com/questions/1627841

  •  06-07-2019
  •  | 
  •  

Вопрос

Я начал писать простую функцию для создания столбца сайта и типа контента. Если я пытаюсь активировать функцию как таковую, она выдает ошибку Значение не попадает в ожидаемый диапазон и ничего более полезного. Если я удаляю тег ContentType, функция активируется очень хорошо, и я вижу только что созданный столбец сайта учетной записи. Любая идея, что ошибка с ContentType?

<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
    <Field
     ID="{345C9562-F0D9-4327-853B-5072E296823A}" 
     Name="Account"
     DisplayName="Account" 
     Type="Text" 
     Group="Accounts">
    </Field>
    <ContentType
     ID="0X010100"
     Name="Account Doc"
     Description="Account Doc"
     Version="0"
     Group="Account Types">
        <FieldRefs>
            <FieldRef 
              ID="{345C9562-F0D9-4327-853B-5072E296823A}"
              Name="Account"
              DisplayName="Account" />
        </FieldRefs>
    </ContentType>
</Elements>
Это было полезно?

Решение

Оказывается, SharePoint недоволен конечным значением 00 в атрибуте ID тега ContentType. Изменение на 01 устранило проблему, или просто добавив GUID в конце после того, как сработало 00:

<ContentType
 ID="0x010100C8813FB7C4814B44BA7FD679120EF6F5"
 Name="Account Doc"
 Description="Account Doc"
 Version="0"
 Group="Account Types">
    <FieldRefs>
        <FieldRef 
          ID="{345C9562-F0D9-4327-853B-5072E296823A}"
          Name="Account"
          DisplayName="Account" />
    </FieldRefs>
</ContentType>

Другие советы

Может быть, это столица "X" в вашем идентификаторе типа контента? Встроенные в нижнем регистре, так что это может быть что-то посмотреть.

Журналы сервера дают вам подсказку о том, что SharePoint ищет, но не может найти здесь?

У меня было похожее сообщение об ошибке при использовании сгенерированного GUID, в котором я забыл удалить дефисы (т. е. с помощью 0x0100042061F1-2366-45d8-A7DE-5B5078E87080 вместо 0x0100042061F1236645d8A7DE5B5078E87080)

Дополнительную информацию об идентификаторах типов содержимого можно найти в WSS 3.0 SDK или в этой статье MSDN: http://msdn.microsoft.com/en-us/library/aa543822.aspx

В моем случае у меня был простой тип контента, основанный на типе задачи, с одним дополнительным настраиваемым полем. Развертывание vsewss - это такой взлом, что оно не может упаковать или развернуть решение. Поскольку это такое простое развертывание, я просто написал командный файл с командами stsadm, чтобы выполнить его.

Примеры командных файлов для установки функций можно найти на странице MVP Andrew Connell. Ты только удалите и заново создайте каталог для компонента в каталоге sp sp (12 hive \ template \ features \) скопируйте туда файл функции и манифеста cd в 12 улей \ bin dir stsadm -o activfeature -filename \ feature.xml -force stsadm -o activfeature -filename \ feature.xml -url IISReset

Это еще не удалось. Не могу сказать то же самое для vsewss или любой другой утилиты пакета from-ever-plex

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top