[c#]解决方案:需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptResourceMapping。
问题详情
如下图所示(部分):
出现该错误,是因为应用程序中需要使用到jquery(现在的web应用程序哪个能离开jquery呢),而目前程序目录中并没有jquery文件,或者有jquery文件但是程序并不知道jquery文件存放的具体位置。因此,我们要做的就是让应用程序能够找到jquery源文件。
引入jquery
如果项目中还没有引入jquery文件,则第一步就是要引入jquery文件。可以从jquery官网下载最新版的jquery源文件,然后在应用程序的根目录下新建一个Scripts文件夹用来放置js文件,将jquery源文件解压到该目录中。如果你使用的版本是vs2013及以上版本,则会方便很多,因为会有内置了NuGet软件包管理,在引用上右击鼠标,会出现NuGet程序包管理选项,点击就会出现管理界面:
出现管理界面之后,在搜索框中搜索jquery,会出现jquery项目结果。
由于我已经安装了jquery,所以该右侧出现的是卸载和更新,如果是项目中没有jquery,则会显示安装按钮。
点击安装之后,NuGet会自动创建Scripts文件夹并将jquery源文件下载到该文件夹中。
引入jquery文件后,程序目录应该如下图所示:
上图是通过NuGet安装的jquery,如果是直接从官网下载jquer引入,则不必将上面的文件全部引入,只需引入必要的jquery-***.js(用于开发环境)和jquery-***.min.js(用于生产环境)即可。(***为jquery的具体版本号)
配置jquery的目录
引入了jquery文件之后,下一步就是要让应用程序知道jquery源文件的位置,也就是要配置jquery的目录。
配置jquery目录可以在Global.asax文件中的Application_Start()方法中添加以下代码:
1 ScriptManager.ScriptResourceMapping.AddDefinition("jquery", new ScriptResourceDefinition 2 { 3 Path = "~/scripts/jquery-3.1.1.min.js", 4 DebugPath = "~/scripts/jquery-3.1.1.js", 5 CdnPath = "http://ajax.microsoft.com/ajax/jQuery/jquery-1.7.2.min.js", 6 CdnDebugPath = "http://ajax.microsoft.com/ajax/jQuery/jquery-1.7.2.js" 7 });
上述代码中将jquery文件的位置映射到了程序的管理当中,注意配置路径要和与安装的路径和版本相一致,这样一来程序就知道jquery的文件目录了。需要注意的是,配置时还需要引入System.Web.UI这个命名空间,因为ScriptManager位于该命名空间之下。
一般情况下,程序就可以正常运行了。