为了使javascript代码不被窃取,我们可以将js文件编译成动态链接库(dll)文件。下面为了演示这一功能,创建了一个控件。

 程序代码:SampleControlsCS.rar

一、创建一个类库项目,命名为UpdateAnimate

二、向项目中添加引System.Web, System.Drawing, System.Web.Extensions

三、向项目中添加一个Jscript的文件UpdatePanelAnimation.js

四、向文件中添加如下代码:

结合MS AJAX将js文件编译到动态链接库
结合MS AJAX将js文件编译到动态链接库BorderAnimation 
= function(color) 

这段代码中,包含一段临时改变UpdatePanel控件样式的方法

 

五、解决方案资源管理器中,右键查看UpdatePanelAnimation.js的属性,把高级中的“生成操作”属性设置成“嵌入的资源”。

六、向项目中添加一个类CustomControl

七、替换类中的代码:

结合MS AJAX将js文件编译到动态链接库using System;
结合MS AJAX将js文件编译到动态链接库
using System.Drawing;
结合MS AJAX将js文件编译到动态链接库
using System.Web.UI;
结合MS AJAX将js文件编译到动态链接库
using System.Web;
结合MS AJAX将js文件编译到动态链接库
using System.Globalization;
结合MS AJAX将js文件编译到动态链接库
结合MS AJAX将js文件编译到动态链接库
namespace UpdateAnimate


八、AssemblyInfo.cs文件中添加如下行:

[assembly: System.Web.UI.WebResource("UpdateAnimate.UpdatePanelAnimation.js", "application/x-javascript")]

九、生成项目。

 

控件演示:

一、创建一个AJAX-enabled类型的网站项目。

二、向网站跟目录下添加bin目录。

三、从控件项目的bin\Debug bin\Release目录拷贝UpdateAnimate.dll到网站bin目录里。

四、替换Default.aspx的内容并运行程序:

 

 
结合MS AJAX将js文件编译到动态链接库<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
结合MS AJAX将js文件编译到动态链接库
结合MS AJAX将js文件编译到动态链接库
<%@ Register TagPrefix="Samples" Namespace="UpdateAnimate" Assembly="UpdateAnimate" %>
结合MS AJAX将js文件编译到动态链接库
结合MS AJAX将js文件编译到动态链接库
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
结合MS AJAX将js文件编译到动态链接库    
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
结合MS AJAX将js文件编译到动态链接库
结合MS AJAX将js文件编译到动态链接库
<script runat="server">
结合MS AJAX将js文件编译到动态链接库
结合MS AJAX将js文件编译到动态链接库
</script>
结合MS AJAX将js文件编译到动态链接库
结合MS AJAX将js文件编译到动态链接库
<html xmlns="http://www.w3.org/1999/xhtml">
结合MS AJAX将js文件编译到动态链接库
<head id="Head1" runat="server">
结合MS AJAX将js文件编译到动态链接库    
<title>ScriptReference</title>
结合MS AJAX将js文件编译到动态链接库
</head>
结合MS AJAX将js文件编译到动态链接库
<body>
结合MS AJAX将js文件编译到动态链接库    
<form id="form1" runat="server">
结合MS AJAX将js文件编译到动态链接库        
<div>
结合MS AJAX将js文件编译到动态链接库            
<asp:ScriptManager ID="ScriptManager1" 
结合MS AJAX将js文件编译到动态链接库                                 EnablePartialRendering
="True"
结合MS AJAX将js文件编译到动态链接库                                 runat
="server">
结合MS AJAX将js文件编译到动态链接库             
<Scripts>
结合MS AJAX将js文件编译到动态链接库                
<asp:ScriptReference Assembly="UpdateAnimate" Name="UpdateAnimate.UpdatePanelAnimation.js" />
结合MS AJAX将js文件编译到动态链接库             
</Scripts>
结合MS AJAX将js文件编译到动态链接库            
</asp:ScriptManager>
结合MS AJAX将js文件编译到动态链接库
结合MS AJAX将js文件编译到动态链接库
结合MS AJAX将js文件编译到动态链接库            
<Samples:UpdatePanelAnimationWithClientResource 
结合MS AJAX将js文件编译到动态链接库                     ID
="UpdatePanelAnimator1"
结合MS AJAX将js文件编译到动态链接库                     BorderColor
="Green"
结合MS AJAX将js文件编译到动态链接库                     Animate
="true"
结合MS AJAX将js文件编译到动态链接库                     UpdatePanelID
="UpdatePanel1"
结合MS AJAX将js文件编译到动态链接库                     runat
="server" >
结合MS AJAX将js文件编译到动态链接库            
</Samples:UpdatePanelAnimationWithClientResource>
结合MS AJAX将js文件编译到动态链接库            
<asp:UpdatePanel ID="UpdatePanel1" 
结合MS AJAX将js文件编译到动态链接库                               UpdateMode
="Conditional"
结合MS AJAX将js文件编译到动态链接库                               runat
="server">
结合MS AJAX将js文件编译到动态链接库                
<ContentTemplate>
结合MS AJAX将js文件编译到动态链接库                    
<asp:Calendar ID="Calendar2" 
结合MS AJAX将js文件编译到动态链接库                                  runat
="server">
结合MS AJAX将js文件编译到动态链接库                    
</asp:Calendar>
结合MS AJAX将js文件编译到动态链接库                
</ContentTemplate>
结合MS AJAX将js文件编译到动态链接库            
</asp:UpdatePanel>
结合MS AJAX将js文件编译到动态链接库        
</div>
结合MS AJAX将js文件编译到动态链接库    
</form>
结合MS AJAX将js文件编译到动态链接库
</body>
结合MS AJAX将js文件编译到动态链接库
</html>
结合MS AJAX将js文件编译到动态链接库
结合MS AJAX将js文件编译到动态链接库
 

相关文章:

  • 2022-02-16
  • 2021-08-23
  • 2021-09-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-26
  • 2021-05-16
猜你喜欢
  • 2021-09-21
  • 2021-12-23
  • 2021-12-19
  • 2022-12-23
相关资源
相似解决方案