我已经引用了Microsoft.Web.Mvc.dll(MVC Futures 2)和MVCContrib.dll(来自MVC Contrib 2),这两个来自Codeplex的当前版本,我遇到了强类型RedirecToAction<>()的问题控制器的功能。
在我引用Futures 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>)'
答案 0 :(得分:4)
完成Lucero的回答,
如果您使用完全限定名称(不是很优雅)似乎是一个很大的缺点,您可以为命名空间设置一个较短的别名:
using MvcContrib;
using Future = Microsoft.Web.Mvc.ControllerExtensions;
然后你可以把它写成Future.RedirectToAction() 或者只是
RedirectToAction();
如果你想使用MvcContrib中的那个。
当然,如果你想主要使用期货装配或使用Contrib的替代方案,你可以撤销这个。
希望这会有所帮助:)
答案 1 :(得分:1)
使用您要使用的完全限定名称,例如Microsoft.Web.Mvc.ControllerExtensions.RedirectToAction()
以便编译器知道您要调用哪一个。