1

Я ссылался на Microsoft.Web.Mvc.dll (MVC Futures 2) и MVCContrib.dll (из MVC Contrib 2), оба текущих выпуска из Codeplex и у меня проблема с строго типизированной функцией RedirecToAction <>() контроллера.ASP.NET MVC Futures 2 и MVCContrib 2 в том же веб-приложении/проекте

Он работал хорошо, пока я не ссылаюсь Фьючерс 2 ..

Это компиляция ошибка времени. По-видимому, эта функция реализована в обеих сборках. Как я могу это разрешить?

Ошибка 1 Вызов неоднозначен между следующими методами или свойствами: 'Microsoft.Web.Mvc.ControllerExtensions.RedirectToAction (System.Web.Mvc.Controller, System.Linq.Expressions.Expression>)' и ' MvcContrib.ControllerExtensions.RedirectToAction (System.Web.Mvc.Controller, System.Linq.Expressions.Expression>)»

ответ

1

используйте полное имя, которое вы хотите использовать, например, Microsoft.Web.Mvc.ControllerExtensions.RedirectToAction(), чтобы компилятор знал, какой из них вы хотите вызвать.

4

Чтобы завершить Lucero ответ,
Если это кажется большой недостаток для вас, чтобы использовать полное имя (не очень элегантный), вы можете установить более короткий псевдоним пространства имен:

using MvcContrib; 
using Future = Microsoft.Web.Mvc.ControllerExtensions; 

вы можете затем записать его Future.RedirectToAction() или просто

RedirectToAction(); 

, если вы хотите использовать один из MvcContrib.

Конечно, вы можете просто отменить это, если хотите использовать в первую очередь фьючерсную сборку или альтернативу использованию Contrib.

Надеюсь, что это поможет :)