/// <summary> /// Registers javascript reference. /// </summary> /// <param name="scriptPath">The path to the javascript file.</param> /// <param name="throwException">OPTIONAL: Indicates whether to throw an exception if the javascript is already registered. By default the value is set to <value>false</value>.</param> /// <returns>MvcHtmlString</returns> public static MvcHtmlString Script(this HtmlHelper helper, string scriptPath, bool throwException = false) { var attributes = new KeyValuePair <string, string> [2]; attributes[0] = new KeyValuePair <string, string>("src", scriptPath); attributes[1] = new KeyValuePair <string, string>("type", "text/javascript"); var register = new ClientResourceRegister("JsRegister", "script", "src"); return(ResourceHelper.RegisterResource(register, attributes, throwException)); }
private static MvcHtmlString RegisterResource(ClientResourceRegister register, KeyValuePair <string, string>[] attributes, bool throwException) { string output; MvcHtmlString result; if (throwException) { result = new MvcHtmlString(register.RegisterResource(attributes)); } else if (register.TryRegisterResource(out output, attributes)) { result = new MvcHtmlString(output); } else { result = MvcHtmlString.Empty; } return(result); }