If you have had experience this problem then read ahead it is a simple fix.
Here are the step to reproduce this problem in Visual Studio
Here is what happened, I had a MVC4 project which was working fine. I created a new area called Admin.
Created a new controller and a view in the admin area. But when calling this view, it would give 404 error.
Tried few things and did some research on the net as usual.
Here is the simple fix which seems to work.
Go to your controller and add the namespace at the top . Just after the imports. Note that admin is the name of my area.
Change it according to your area name
Step 1
Imports System.Data.Entity
Namespace Areas.admin
You controller code is here
End Namespace
Step 2
Go to your Area and look for a file called
adminAreaRegistration.vb ( again admin is my area name, if your area is called sales then you should have a file called sales
AreaRegistration.vb. And your namespace will be Areas.sales.)Ensure that the name space which you have in your controller and the adminAreaRegistrarion.vb is the same
Namespace Areas.admin
Public Class adminAreaRegistration
Inherits AreaRegistrationPublic Overrides ReadOnly Property AreaName() As String
Get
Return “admin”
End Get
End PropertyPublic Overrides Sub RegisterArea(ByVal context As System.Web.Mvc.AreaRegistrationContext)
context.MapRoute( _
“admin_default”, _
“admin/{controller}/{action}/{id}”, _
New With {.action = “Index”, .id = UrlParameter.Optional} _
)
End Sub
End Class
End Namespace