Yet another possible root cause for this error is if the namespace for the area registration class does not match the namespace for the controller.
E.g. correct naming on controller class:
namespace MySystem.Areas.Customers
{
public class CustomersController : Controller
{
...
}
}
With incorrect naming on area registration class:
namespace MySystem.Areas.Shop
{
public class CustomersAreaRegistration : AreaRegistration
{
...
}
}
(Namespace above should be MySystem.Areas.Customers
.)
Will I ever learn to stop copy and pasting code? Probably not.