-
-
Notifications
You must be signed in to change notification settings - Fork 65
Home
Shandem edited this page Apr 16, 2013
·
45 revisions
Quick Start
MVC
Webforms
Pre-defined bundles
Path Aliases
To get started quickly, install CDF via Nuget. If you are using MVC be sure to install the MVC package as well.
PM> Install-Package ClientDependency
PM> Install-Package ClientDependency-Mvc
@Html.RequiresCss("~/Css/ColorScheme.css")
@Html.RequiresJs("~/Js/jquery.js")
@Html.RequiresCssFolder("~/Css/Widgets/")
@Html.RequiresJsFolder("~/Js/Controls/")
@Html.RequiresJs("~/Js/jquery.js")
.RequiresJs("~/Js/jquery.validation.js")
.RequiresJs("~/Js/myLib.js")
@Html.RenderJsHere()
@Html.RenderCssHere()
<CD:CssInclude runat="server" FilePath="~/CSS/ColorScheme.css" />
<CD:JsInclude runat="server" FilePath="~/Js/jquery.js" />
<CD:CssFolderInclude runat="server" FolderVirtualPath="~/Css/Widgets/" />
<CD:JsFolderInclude runat="server" FolderVirtualPath="~/Js/Controls/" />
[ClientDependency(ClientDependencyType.Css, "~/Css/CustomControl.css")]
public class MyControl : Control { ... }
[ClientDependency(ClientDependencyType.JavaScript, "~/Js/MyControl.js")]
public class MyControl : Control { ... }
You need to have a loader on your page:
<CD:ClientDependencyLoader runat="server" id="Loader" />
Then you'll need to define a place holder for where you want the JavaScript and CSS rendered
<%--This will ensure the CSS is rendered at the location of this placeholder--%>
<asp:PlaceHolder runat="server" ID="CssPlaceHolder"></asp:PlaceHolder>
<%--This will ensure the JS is rendered at the location of this placeholder--%>
<asp:PlaceHolder runat="server" ID="JavaScriptPlaceHolder"></asp:PlaceHolder>
NOTE: the Ids of the controls must be how they are defined above, otherwise you can change the expected ids in the CDF configuration. Also in Webforms there are various providers that allow you to change the behavior of the ClientDependencyLoader but the PlaceHolderProvider is the default and is recommended.
Creating a pre-defined bundle on application startup. This example creates a bundle in the global.asax:
public class MyApplication : HttpApplication
{
protected void Application_Start()
{
CreateBundles();
}
public static void CreateBundles()
{
BundleManager.CreateCssBundle("MyControl",
new CssFile("~/Css/Controls/MyControl/css1.css"),
new CssFile("~/Css/Controls/MyControl/css2.css"),
new CssFile("~/Css/Controls/MyControl/css3.css"));
BundleManager.CreateCssBundle("JQuery",
new CssFile("~/Js/jquery.js"),
new CssFile("~/Js/jquery.validation.js"));
}
}
@Html.RequiresCssBundle("MyControl")
@Html.RequiresJsBundle("JQuery")
Coming soon...