Views: 5139
Number of votes: 6
Average rating:

AmbiguousMatchException in MVC BlockController

Have you ever got the following error in the BlockController for our MVC API?

The current request for action 'Index' on controller type 'x' is ambiguous between the following action methods:
System.Web.Mvc.ActionResult Index(y) on type x
System.Web.Mvc.ActionResult Index(y) on type z

If not, you will probably get it in the future. You get this error if you add an action called “Index” in your controller without overriding the index action in the base class. So please, when using a block controller, override the index action, or you may end up with an exception on your EPiServer Tech day presentation.

Nov 09, 2012

Fredrik Stolpe
( By Fredrik Stolpe, 10/28/2014 9:12:04 AM)

A message from the future: I got this error now and this post helped me, thanks :-)

Jens Qvist
( By Jens Qvist, 10/21/2015 3:08:22 PM)

Another message from the future. I got this error and this post helped me also! Thanks! :-D

Glenn Lalas
( By Glenn Lalas, 1/15/2016 4:53:41 PM)

Chiming in from 2016 to continue the trend of confirming how helpful this post was.  Thanks!  :)

Noel Sefton
( By Noel Sefton, 2/5/2019 11:30:28 AM)

yep, helped me as well... (6 years later)

public ActionResult Index(VeryImportantBlock currentBlock) { /*code in here*/ }

becomes

public override ActionResult Index(VeryImportBlock currentBlock) { /* code in here*/ }

Douglas Douglas
( By Douglas Douglas, 4/19/2020 4:27:27 AM)

This post was written 3 months before I got my first professional programming job and 2 years before I had ever hear of episerver, and it's still relavent 7.5 years later. Thanks @JonasBergvist!

Fredrik Stolpe
( By Fredrik Stolpe, 5/20/2020 8:27:35 AM)

Here again, 6 years later :-)

Please login to comment.