- Я разрабатываю библиотеку классов (
MyClassLibrary
). - Я полагаюсь на библиотеку сторонних классов (
ThirdPartyClassLibrary
). - Мне нужно использовать ту же версию
ThirdPartyClassLibrary
, что и мои пользователи. например, если я установил статическое значение вThirdPartyClassLibrary
, пользователь должен увидеть это изменение. - Пользователи моего класса могут быть в зависимости от любой из четырех различных версий
ThirdPartyClassLibrary
. -
ThirdPartyClassLibrary
большой, я не хочу распространять его с помощью моего программного обеспечения. - Я отразил все 4 версии
ThirdPartyClassLibrary
и подтвердил, что вещи, которые я буду с ними делать, совместимы во всех версиях (интерфейсы одинаковы, подписи методов одинаковы и т.д.). - Мне нужно, чтобы звонки в
ThirdPartyClassLibrary
исполнялись! Я не могу размышлять обо всем, когда мне нужно что-то называть. -
MyClassLibrary
будет загружаться во время выполнения, поэтому я не могу ожидать, что пользователи будут взаимодействовать с перенаправлением привязки сборки или другими настройками времени разработки (или любыми настройками вообще, мои пользователи не могут ничего делать). - Я хотел бы воспользоваться проверкой кода во время компиляции, поэтому в идеале не было никакого отражения.
Как я могу написать MyClassLibrary
, чтобы при загрузке в процесс все правильно работало с версией ThirdPartyClassLibrary
, которую пользователь загрузил?