Два взаимодействия одного имени в одном проекте - PullRequest
0 голосов
/ 27 декабря 2018

У меня есть две версии сторонней библиотеки.Они идентичны по пространству имен, но одно из них предназначено для работы с устройствами модели X, а другое - с оборудованием модели Y.Если я использую неправильную библиотеку, я получаю все виды ошибок времени выполнения, поэтому они не являются взаимозаменяемыми, несмотря на то, что они имеют одинаковые имена классов и почти одинаковый интерфейс.Это сомнительное решение от имени поставщиков библиотек, но в моем случае я либо возьму его, либо уйду.

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

Мне удалось добавить взаимодействия для обеих библиотек в проект в Visual Studio, переименовав их, но мне также нужно как-то различатькакой из них используется, поэтому я назначил им псевдонимы.Первое взаимодействие, которому я назначил псевдоним, не вызывает никаких проблем, но второе с псевдонимом всегда создает ошибки компилятора.

Внешний псевдоним 'xxx' не был указан в параметре / referenceЧто бы я ни делал, он отказывается распознавать второй псевдоним.Кроме того, если я нажимаю кнопку просмотра объекта в браузере на втором взаимодействии, это указывает на информацию первого, что говорит мне о том, что Visual Studio в своей бесконечной мудрости полностью игнорирует второе взаимодействие.

Раньше коулига решала эту проблему, разбирая одно из вмешательств и изменяя пространство имен, но я бы хотела знать, есть ли какие-нибудь более лучшие решения.Спасибо за ваше время.

...