Несколько сборок с одинаковыми методами расширения проблемы на странице cshtml.«Вызов неоднозначен между следующими методами или свойствами» - PullRequest
0 голосов
/ 01 июля 2019

У меня есть обычное приложение ASP.NET MVC (.NET версия 4.5.2) Web.config:

    <httpRuntime targetFramework="4.5.2"/>

Для одного из усовершенствований мне пришлось ссылаться на старый компонент безопасности, который был построенв .NET 2.0, который ссылается на «LinqBridge.dll».Теперь мое веб-приложение уже знает о методах расширения Linq из сборки System.Linq.Когда я компилирую свое веб-приложение, оно прекрасно компилирует и копирует «LinqBridge.dll» в мою корзину.На моей странице CSHTML у меня есть код "somevar.Count ()".Здесь метод Count () подчеркнут красным (та же ошибка, если я пытаюсь просто запустить веб-приложение и просмотреть эту страницу CSHTML - просто ради этого)

Ошибка

Ошибка CS0121 Вызов неоднозначен между следующими методами или свойствами: 'System.Linq.Enumerable.Count (System.Collections.Generic.IEnumerable)' и 'System.Linq.Enumerable.Count (System.Collections.Generic.IEnumerable).'

Теперь, если я удаляю "LinqBridge.dll" из bin, он работает, но когда я пытаюсь использовать этот старый код сборки, он отказывает.

Я застрял в этой проблеме.Есть ли способ, которым я могу сказать, чтобы мое веб-приложение не утруждало себя поиском / см. "LinqBridge.dll".Таким образом, только старая сборка будет использовать его, поскольку у него есть ссылка.Я не могу изменить версию или код 2-х проектов.

Пробовал с решением на базе кода https://devnet.kentico.com/articles/referencing-multiple-versions-of-the-same-assembly-in-a-single-application, но не повезло.

...