Неоднозначный вызов при использовании определенных библиотек сразу - PullRequest
0 голосов
/ 21 сентября 2018

В моем проекте Xamarin я использую ReactiveUI и Firebase.Xamarin.Когда эти две библиотеки используются одновременно, любая попытка использовать System.Reactive.Linq.Observable методы расширения, такие как Where или Select, приводит к ошибке времени компиляции:

Вызов неоднозначен между следующимиметоды или свойства: 'System.Reactive.Linq.Observable.Where (System.IObservable, System.Func)' и 'System.Reactive.Linq.Observable.Where (System.IObservable, System.Func)'

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

Ответы [ 2 ]

0 голосов
/ 25 сентября 2018

Firebase.Xamarin больше не поддерживается, поэтому, если я захочу последовать совету @PhilipSmith, мне придется использовать версию ReactiveUI, которой более 2 лет.Я не хотел этого делать, поэтому я решил клонировать Firebase.Xamarin начиная с его OSS и добавить его в свое решение как другой проект с намерением изменить версию ReactiveUI, на которую он ссылался.Но когда я добавил это как ссылочный проект, ошибка исчезла.

0 голосов
/ 21 сентября 2018

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

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

...