Get the MVC controller name in Javascript function

asp.net-mvc, javascript, jquery

Solution

You can get controller's name in javascript this way using razor:

var controllerName = '@ViewContext.RouteData.Values["Controller"].ToString()';

Or

var controllerName='@HttpContext.Current.Request.RequestContext.RouteData.Values["controller"].ToString()';

Update:

You can also get controller's name this way:

var controllerName = '@ViewContext.Controller.ValueProvider.GetValue("controller").RawValue';

Problem

I have a Jquery CRUD function; which is called from several Controllers actions. Is there any way to find out which contoller is tiggering that function. For Example; function call from View: ``` $('a.Edit-Icon').live("click", function (event) { editDialog(this, event, '#_List'); }); ``` Function parameters: ``` function editDialog(tag, event, target,value) { ------ // How to get the Controller name ??????????? } ``` Thanks in advance.....

Original source