Sharepoint 2010 регистрирует контроль как безопасный через wsp

Я создал решение Sharepoint 2010 "Hello World", используя VS2010. Он содержит только функцию и веб-часть, содержащую метку. Я зарегистрировал веб-часть в качестве безопасного элемента управления в окне "Свойства" веб-части в VS2010.

Когда я развертываю свое решение на локальном сервере, все работает отлично! Я могу добавить веб-часть на страницу, и в файле web.config мой элемент управления добавляется в список SafeControls. Когда я устанавливаю то же решение на другом сервере, я вижу веб-часть в списке доступных веб-частей, но когда я пытаюсь добавить его на страницу, он говорит мне, что он не зарегистрирован как безопасный. Когда я проверяю файл web.config, там нет записи для моего контроля. Если я добавлю один вручную (тот, что с моего сервера разработки), все начнет работать.

Теперь мне интересно, почему элемент управления не регистрируется при установке файла wsp. Манифест внутри wsp содержит следующую строку:

<Assemblies>
<Assembly Location="abc.TestWebPart.dll" DeploymentTarget="GlobalAssemblyCache">
  <SafeControls>
    <SafeControl Assembly="abc.TestWebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e262c75e6f6e8440" Namespace="abc.TestWebPart.VisualWebPart1" TypeName="*" />
  </SafeControls>
</Assembly>

Любые идеи очень приветствуются!

3 ответа

Проверьте на опечатки и различия версий.

Поздний ответ знаю.

Я думаю, что в вашем теге SafeControl отсутствует ' Safe="TRUE".

Правильный код:

<Assemblies>
  <Assembly Location="abc.TestWebPart.dll" DeploymentTarget="GlobalAssemblyCache">
    <SafeControls>
      <SafeControl 
        Assembly="abc.TestWebPart, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e262c75e6f6e8440" 
        Namespace="abc.TestWebPart.VisualWebPart1" 
        TypeName="*"
        Safe="TRUE" 
      />
    </SafeControls>
  </Assembly>
</Assemblies>

Вы активировали функцию для веб-приложения?

Другие вопросы по тегам