У меня есть пользовательская функция, которая представляет собой действие «Изменить блок управления» (ECB) в библиотеке документов, которая развертывается как пакет решений (WSP). Когда вы опускаете раскрывающийся список рядом с файлом, вы видите функцию, а когда выбрано действие ECB, пользователь перенаправляется на страницу пользовательского приложения.
Я разрешаю установить эту функцию во всех 4 различных областях: Ферма, Веб-приложение, Сайт и Интернет. Каждый из них будет находиться в отдельном пакете решений, но иметь один и тот же FeatureId, SolutionId и т. Д. Предполагается, что функция устанавливается одновременно только в одну область. Если администратор развертывает его, активирует его, и если мы хотим изменить область действия, деактивировать его, все работает правильно. Если по какой-либо причине администратор не деактивирует его первым, действие ECB будет содержать повторяющиеся записи в библиотеке документов.
Например, скажем, мы устанавливаем его как область сайта (семейство сайтов), а затем решаем, что вместо этого мы хотим, чтобы она была в области фермы, и сначала не деактивируем ее, а вместо этого просто перейдите в «Управление решениями», а затем уберите и удалите его. Если мы посмотрим на семейство сайтов, где оно ранее было доступно, мы не увидим действия ЕЦБ.
Если мы затем добавим пакет решения области фермы и развернем его, мы теперь увидим действие ECB в семействе сайтов, даже если мы не развернули его, а для атрибута feature.xml ActivateOnDefault установлено значение false. Если мы затем активируем его, мы увидим два действия ЕЦБ.
У кого-нибудь есть идеи? Я добавил файл feature.xml и elements.xml ниже.
ТИА,
Magnus
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
RegistrationType = "Список"
RegistrationID = "101"
Местонахождение = "EditControlBlock"
Последовательность = "300"
ImageUrl = "/ _ макеты / изображения / MyFeature / MyOtherPic.gif"
Title = "My Feature"
Описание = "Моя функция ЕЦБ"
>