Управляемая расширяемость с помощью System.AddIn - PullRequest
0 голосов
/ 30 августа 2011

Я использую System.AddIn для добавления нового компонента в мое приложение.Приложение успешно выбрало добавленную надстройку.

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

Можно ли добавить несколько надстроек в одну и ту же библиотеку классов, поэтому каждый раз, когда мне не нужно добавлять новый проект?

Если возможно, то как мне найти соответствующий токен во время загрузки надстройки.

Заранее спасибо ...

1 Ответ

0 голосов
/ 10 ноября 2011

Определенно возможно иметь несколько надстроек в одной сборке. Каждый класс, отмеченный [System.AddIn.AddInAttribute] и расширяющий контракт, который вы указываете при выполнении FindAddIns, будет преобразован в отдельный AddInToken.

Чтобы отфильтровать набор обнаруженных токенов, взгляните на System.AddIn.Pipeline.QualificationDataAttribute. Этот атрибут позволяет добавлять метаданные имени / значения к типам надстроек, к которым можно получить доступ из AddInToken.

...