I am trying to access a .js file in the views directory. I have an MVC application with /Views/Home/MyControl.ascx I have a js file /Views/Home/MyControl.js
I wish to reference the .js file and keep it with the control. I have tried the following entries in the routing, and none seem to work.
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.IgnoreRoute("{file}.js");
routes.IgnoreRoute("{resource}.js/{*pathInfo}");
routes.IgnoreRoute("{controller}/{resource}.js/{*pathInfo}");
routes.IgnoreRoute("{*alljs}", new { alljs = @".*\.js(/.*)?" });
Please help, please don't suggest adding the .js file to the scripts directory. I would like to make it work this way, or know why it cannot be done.
I would put the script into the page, only script debugging is broken in VS2010 B2.
Thanks Regards Craig.
The
Views
folder is, well for views, and javascript should be put elsewhere. That's why the designers of the MVC framework put aweb.config
in thisViews
folder that denies access to any file inside. You could modify this defaut setting but be warned that this could be a potential security hole. So open theweb.config
file located in theViews
folder and:Replace:
with:
Navigate to
http://yoursite/Views/test.js
P.S. You could also remove all the
IgnoreRoutes
you put inglobal.asax
.