Understanding.NET подписание сборки


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

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

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

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

1 2

1 ответ:

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

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

Меф это делает очень простым создание приложения, которое использует плагины.