控制器的动作在具有相同名称的基类的动作之间是不明确的.

Lau*_*.Wu 6 c# asp.net-mvc

控制器类型上当前的操作请求'索引'在ContactController以下操作方法之间是不明确的:

System.Web.Mvc.ActionResult Index() on type RX.Web.Controllers.ContactController
System.Web.Mvc.ActionResult Index() on type RX.Web.Controllers.CustomControllerBase2[[RX.Core.Model.Contact, RXTechJob.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]] 
Run Code Online (Sandbox Code Playgroud)

联系控制器:

        public virtual new ActionResult Index()
    {
        return base.Index();
    }
Run Code Online (Sandbox Code Playgroud)

基础控制器:

        public virtual ActionResult Index()
    {

        return View("Index", SelectAll());

    }
Run Code Online (Sandbox Code Playgroud)

为什么会这样?怎么解决?谢谢!

Mic*_*uso 5

您正在创建一个名为index的第二个方法,MVC不知道如何处理.请参阅此处,了解有关virtual new创建其他非重写方法的讨论.

相反,您的联系控制器会考虑以下内容:

public override ActionResult Index() {
        return base.Index();
}
Run Code Online (Sandbox Code Playgroud)