2016-05-13 92 views
0

我有一些MVC控制器的核心产品。ASP.NET MVC核心 - 使用自定义类库替换控制器

我想有能力使用自定义类库(比方说MyProduct.MVC.Custom.dll)来覆盖特定于客户端的一些操作。

在MVC的以前版本中使用它routes.MapRoute(命名空间是可能的,新的[] {“MyProduct.MVC.Custom”}

在目前的MVC,我们没有这样的选择,我收到以下错误消息:

AmbiguousActionException:匹配多个动作匹配的路由数据以下行动,并已全部满足的约束。

MyProduct.MVC.Custom.Controllers.HomeController.About

MyProduct.MVC.Controllers.HomeController.About

Microsoft.AspNet.Mvc.Infrastructure.DefaultActionSelector.SelectAsync(RouteContext上下文)

谷歌建议我使用领域,但我想更换控制器的采用相同网址的操作。

是否有可能实现这是ASP.NET MVC核心?

回答

1

我终于管理如何做到这一点。

它可以通过Route属性来实现与Order=0

[Route("[controller]/[action]",Name ="Replacement", Order = 0)] 
public IActionResult About() 
{ 
    ViewData["Message"] = "This is About from Custom controller!!!!!!!!!!!!!!"; 

    return View(); 
}