同一 Web 应用程序/项目中的 ASP.NET MVC Futures 2 和 MVCContrib 2
我引用了 Microsoft.Web.Mvc.dll (MVC Futures 2) 和 MVCContrib.dll (来自 MVC Contrib 2),这两个版本均来自 Codeplex,并且我对 Controller 的强类型 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>)'
I have referenced both Microsoft.Web.Mvc.dll (MVC Futures 2) and MVCContrib.dll (from MVC Contrib 2), both current releases from Codeplex and I have a problem with strongly-typed RedirecToAction<>() function of Controller.
It worked fine until I referenced Futures 2..
This is the compile time error. Apparently this function is implemented in both assemblies. How can I resolve that?
Error 1 The call is ambiguous between the following methods or properties: 'Microsoft.Web.Mvc.ControllerExtensions.RedirectToAction(System.Web.Mvc.Controller, System.Linq.Expressions.Expression>)' and 'MvcContrib.ControllerExtensions.RedirectToAction(System.Web.Mvc.Controller, System.Linq.Expressions.Expression>)'
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
要完成卢塞罗的回答,
如果使用完全限定名称(不是很优雅)对您来说是一个很大的缺点,您可以为命名空间设置一个更短的别名:
然后您可以将其编写为 Future.RedirectToAction()
或者只是
如果您想使用 MvcContrib 中的一个。
当然,如果您想主要使用 futures 组件或使用 Contrib 的替代方案,您可以反转这一点。
希望这有帮助:)
To complete Lucero answer,
If that seems a big drawback to you to use the fully qualified name (not very elegant), you can set a shorter alias to the namespace:
you can then write it Future.RedirectToAction()
or just
if you want to use the one from MvcContrib.
Of course you could just reverse this if you want to use primarily the futures assembly or the alternative to use the Contrib.
Hope this helps :)
使用您想要使用的完全限定名称,例如
Microsoft.Web.Mvc.ControllerExtensions.RedirectToAction()
,以便编译器知道您要调用哪一个。Use the fully qualified name you want to use, e.g.
Microsoft.Web.Mvc.ControllerExtensions.RedirectToAction()
so that the compiler knows which one you want to call.