У меня есть веб-приложение с несколькими различными суб-веб-приложениями, использующими MVC. Проблема, с которой я сталкиваюсь, заключается в том, что два суб-веб-сервера используют разные версии MVC. Один из них недавно был обновлен, чтобы использовать версию 1.0, и один застрял в более ранней версии предварительного просмотра.ASP.NET MVC Versioning Issue
После модернизации одного из суб-тканей до 1,0, другой сеть, которая использует версию предварительного просмотра не может со следующей ошибкой:
Could not load type 'System.Web.HttpContextWrapper2' from assembly 'System.Web.Abstractions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
Я подозреваю, что проблема связана с тем, что оба 1.0 и предварительные версии DLL System.Web.Abstractions помечены как версия 3.5.0.0, но на самом деле содержат разные классы. Итак, когда приложение предварительного просмотра ссылается на System.Web.Abstractions, оно получает уже загруженную версию MVC 1.0 вместо версии предварительного просмотра, которая находится в каталоге bin.
Есть ли способ заставить среду выполнения загрузить сборку в два раза, как если бы они были двумя разными версиями, хотя на самом деле они помечены тем же номером версии? Я искал использование тега в моей веб-конфигурации, но не мог точно понять, как я буду использовать это для этого, или если он даже достигнет того, что мне нужно сделать здесь.
Вам действительно нужны две версии, работающие бок о бок, не будет ли предыдущая версия заботиться о проблеме yoru? –
Мне действительно нужны обе версии, работающие бок о бок - в версии 1.0 есть изменения, которые приводят к тому, что код, написанный против версии предварительного просмотра, больше не работает. Я мог бы конвертировать приложение, используя версию предварительного просмотра, чтобы использовать 1.0, но я бы предпочел не делать этого прямо сейчас, если это возможно. –
В итоге я просто конвертировал приложение в MVC 1.0. Это должно было быть сделано в любом случае, но мне все равно было бы интересно узнать, есть ли способ сделать это. –