封装JS文件到DLL中并在页面中调用
2016-03-11 16:27
609 查看
通常在ASP.NET,我们常常会用到JS脚本来实现页面上的很多操作。在页面中引用JS的方法也是有好几种。
这里来介绍一下,如何将JS脚本内嵌到组件(Assembly)中,即DLL中。这样的做法最大的好处就是能够保护JavaScript文件的内容,避免JavaScript类的定义被修改。
下面就以一个示例来讲解如何操作:
1.打开VS,新建一个WebApplication1项目[这里新建网站也可以],采用默认设置。
2.在当前解决方案中添加新项目。(类库: JSLib),如图:
添加后,默认的会有一个Class.cs文件,我们将其重命名为:【ReferenceClientScript.cs】,这在后面我们会用它。
3.由于新建的是类库,所以要添加引用:System.Web,这在后我们会用到。
4.在JSLib中添加一个JS文件,取默认设置。自动有一个JScript1.js文件。
5.编写JS脚本【JScript.js】。
我们这里只是一个简单的演示,所以脚本代码尽量简单。Hello,World!,一段最简单的类,目的在演示,当然你可以写的更复杂些。
JSScript.js 代码:
6.设置JScript.js属性->生成操作为【嵌入的资源】,如图:
7.在JSLib项目的AssemblyInfo.cs文件最后添加一行代码:【注意JSLib.JScript1.js,JSLib是js所在项目的命名空间】
8.编写JS脚本注册类【ReferenceClientScript.cs】。
ReferenceClientScript.cs 代码:
9.在WebApplication1中添加项目引用。编译后生成JSLib.dll
10.在要调用脚本的页面注册JSLib.dll
11.引用脚本。
12.最后完成效果图:
13.执行时的html代码:
由上面的html代码可以看出,经过dll封装后的js代码,我们仅仅通过html代码是无法找到它的源文件,这样就很好的实现了js文件的安全保护.同时在服务器端 也是看不到到的,除非你拥有源码,否则无法查看js源文件.
14.源码下载:JS封装到DLL
并在页面调用
这里来介绍一下,如何将JS脚本内嵌到组件(Assembly)中,即DLL中。这样的做法最大的好处就是能够保护JavaScript文件的内容,避免JavaScript类的定义被修改。
下面就以一个示例来讲解如何操作:
1.打开VS,新建一个WebApplication1项目[这里新建网站也可以],采用默认设置。
2.在当前解决方案中添加新项目。(类库: JSLib),如图:
添加后,默认的会有一个Class.cs文件,我们将其重命名为:【ReferenceClientScript.cs】,这在后面我们会用它。
3.由于新建的是类库,所以要添加引用:System.Web,这在后我们会用到。
4.在JSLib中添加一个JS文件,取默认设置。自动有一个JScript1.js文件。
5.编写JS脚本【JScript.js】。
我们这里只是一个简单的演示,所以脚本代码尽量简单。Hello,World!,一段最简单的类,目的在演示,当然你可以写的更复杂些。
JSScript.js 代码:
7.在JSLib项目的AssemblyInfo.cs文件最后添加一行代码:【注意JSLib.JScript1.js,JSLib是js所在项目的命名空间】
ReferenceClientScript.cs 代码:
10.在要调用脚本的页面注册JSLib.dll
13.执行时的html代码:
14.源码下载:JS封装到DLL
并在页面调用
相关文章推荐
- js常用模板引擎
- js--冒泡排序[由小到大]
- js 解决原型问题的方案 : 构造器和原型的组合
- js事件绑定的几种方式
- js模拟表单提交
- 举例说明JavaScript中的实例对象与原型对象
- js之widget日历datepicker
- JavaScript中setTimeout和setInterval函数的传参及调用
- js动态加载html,加载后的页面元素某些事件失效的解决方案
- javascript中面向对象之原型链解析
- 原生JavaScript制作微博发布面板效果
- 关于javascript的this指向问题
- javascript日常总结
- 深入学习JavaScript(一)
- [RxJS] Completing a Stream with TakeWhile
- (一)ExtJs学习前的准备工作,及第一个Ext小例子HelloWorld
- [RxJS] Adding Conditional Logic with Filter
- json 和jsonp
- [转]backbone.js 示例 todos
- JS核心语法基础