Я создал решение 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>
Любые идеи очень приветствуются!