Развертывание адаптеров управления в SharePoint - PullRequest
0 голосов
/ 11 марта 2009

Есть ли способ автоматического развертывания адаптеров управления (некоторые модификации меню) в SharePoint с использованием решения и функций WSP? Могу ли я программно редактировать / развертывать какой-нибудь файл ".browser"?

Если это невозможно, каковы альтернативы (хорошая практика)?

Мне нужно это для издательского сайта.

Ответы [ 3 ]

1 голос
/ 12 марта 2009

Кроме того, с помощью функций у вас всегда есть возможность определить FeatureReceiver, который по сути является вызовом сборки, предоставленной разработчиком, для обработки событий жизненного цикла компонентов (например, onFeatureInstalled, onFeatureActivation и т. Д.). Там вы сможете писать код .Net. взаимодействовать с инфраструктурой.

1 голос
/ 12 марта 2009

Вы могли бы дать WSPBuilder шанс. Это набор инструментов SharePoint с открытым исходным кодом. Я знаю, что с WSPBuilder вы определенно разворачиваете файлы в папку bin и ресурс в каталоге приложения (... \ Inetpub \ wwwroot \ wss \ VirtualDirectories \ 80).

Так что, возможно, также возможно развернуть файлы в папке App_Browsers. Я думаю, что стоит попробовать.

0 голосов
/ 24 января 2013

Вот статья , объясняющая эту задачу. Вы можете добавить такой метод в класс мастер-страницы:

private static void AddControlAdapterToType<T>(Type controlType) where T : ControlAdapter, new()
   {
       if (controlType == null)
       {
           throw new ArgumentNullException("controlType", "This argument can not be null!");
       }

       var adapters = HttpContext.Current.Request.Browser.Adapters;
       var key = controlType.AssemblyQualifiedName;
       if (!adapters.Contains(key))
       {
           var adapter = typeof(T).AssemblyQualifiedName;
           adapters.Add(key, adapter);
       }
   }

И затем вы вызываете его из конструктора мастер-страниц следующим образом:

AddControlAdapterToType<YourCustomAdapter>(typeof(Microsoft.SharePoint.WebPartPages.ContentEditorWebPart));
...