Общие сведения о подписывании сборок .NET

Этот вопрос касается открытого ключа, который есть у каждой сборки .NET AFAIK (просмотр DLL в блокноте [внизу открытый ключ])

Я понимаю, что такое подписывание и почему оно есть в .NET, но я работаю над проектом plug and play (плагин). Я понимаю, как использовать System.Type и тому подобное для создания системы плагинов.

Но мой вопрос о том, как плагины будут работать с некоторыми «API», которые я пишу (обратите внимание на кавычки), например, доступ к внутренним процедурам самого приложения (например, к операционной системе).

Теперь вопрос: если при обновлении приложения программа обновления заменяет DLL «API» более новой версией, не нарушит ли это плагины из-за подписи? (Если это так, я вполне согласен написать небольшой файл кода, который использует System.Type, который они вставили в свой плагин для доступа к «API»)


person Cole Johnson    schedule 17.06.2012    source источник


Ответы (1)


Если вы хотите создать архитектуру подключаемого модуля, я предлагаю вам взглянуть на MEF (Managed Extensibility Framework) из РС.

Managed Extensibility Framework (MEF) — это композиционный уровень для .NET, повышающий гибкость, удобство сопровождения и тестируемость больших приложений. MEF можно использовать для расширения подключаемых модулей сторонних производителей или он может принести преимущества слабосвязанной архитектуры, подобной подключаемым модулям, в обычные приложения.

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

person Oded    schedule 17.06.2012