Antony Scott
Antony Scott

Reputation: 21998

Changing scripts folder in MVC application and using Telerik MVC Extensions

I am using the Telerik MVC Extensions and have moved my Scripts folder in to the Content folder. So instead of ...

    <script src="<%= Url.Content("~/Scripts/jquery-1.4.1.min.js") %>" type="text/javascript"></script>

... I now have ...

<script src="<%= Url.Content("~/Content/Scripts/jquery-1.4.1.min.js") %>" type="text/javascript"></script>

I realise that I can turn off jQuery inclusion with the ScriptRegistrar().jQuery(false) method, but how to I tell the Telerik MVC Extensions where the new "base" folder is?

Upvotes: 1

Views: 1191

Answers (3)

Tom Mayfield
Tom Mayfield

Reputation: 6276

I'm not sure what version of the Telerik MVC extensions it came with, but you can call DefaultPath() on the default group to change the base directory:

<%= Html.Telerik().ScriptRegistrar()
        .DefaultGroup(g => g.DefaultPath("~/Content/Scripts")
        .Add("Main.js"))
%>

Upvotes: 4

Antony Scott
Antony Scott

Reputation: 21998

Since the code formatting is, well not there in the comments, here is my code ...

public class MvcApplication : System.Web.HttpApplication, IContainerAccessor
{

    ...

    protected void Application_Start()
    {
        ...

        WebAssetDefaultSettings.ScriptFilesPath = "~/Content/Scripts";
    }


    ...
}

Upvotes: 0

Alex Gyoshev
Alex Gyoshev

Reputation: 11977

You cannot set a base folder through the API, you either follow the MVC convention or you insert your scripts manually. You can, of course, edit the code of the extensions and modify the places where the ScriptRegistrar looks for them, in the WebAssetDefaultSettings class.

That said, do you really need the scripts in the Content folder?

Upvotes: 2

Related Questions