Jonas Bergqvist
Nov 9, 2012
  5979
(6 votes)

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

Comments

Fredrik Stolpe
Fredrik Stolpe Oct 28, 2014 09:12 AM

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

Jens Qvist
Jens Qvist Oct 21, 2015 03:08 PM

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

Glenn Lalas
Glenn Lalas Jan 15, 2016 04:53 PM

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

Noel Sefton
Noel Sefton Feb 5, 2019 11:30 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*/ }

Drew Douglas
Drew Douglas Apr 19, 2020 04: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
Fredrik Stolpe May 20, 2020 08:27 AM

Here again, 6 years later :-)

Please login to comment.
Latest blogs
Optimizely SendGrid SMTP host is deprecated

SendGrid is a services for sending email that is included in Optimizely DXP. Previously smtp.episerver.net was the recommended SMTP server to use,...

Tomas Hensrud Gulla | Dec 4, 2022 | Syndicated blog

Hosting Optimizely CMS 12 on Docker Engine

Since Optimizely CMS can now be deployed as a Docker container, here is a demonstration of building, running and scaling an Optimizely CMS 12 site ...

Stefan Holm Olsen | Dec 4, 2022 | Syndicated blog

How to use CacheTagHelper with content areas in Optimizely CMS 12

I might be going out on a limb here - if you have a better solution, feel very free to share it!  Upgrading your Optimizely web application from .N...

Andreas J | Dec 2, 2022

The 1001st Piece in your 1000 Piece Puzzle: .NET Default Interface Functions

I was recently working with a client who wanted a reasonably large subsystem added to Optimizely that would add automated management to their...

Greg J | Nov 28, 2022 | Syndicated blog

Video Demonstration, creating a CMS12 Alloy Sample Site

Hey All Below you will find a quick video demonstration on how to install a local version of Alloy Sample based on CMS12 / .Net 6. As you will see ...

Minesh Shah (Netcel) | Nov 28, 2022

How to create an admin user I Optimizely CMS – with Episerver CLI

In this blog post I’ll show how to create an admin user for Optimizely CMS in a new environment where you don’t have access to the admin interface.

Ove Lartelius | Nov 28, 2022 | Syndicated blog