热门关键字: jsp web pl/sql pl webwor   →开发工具  操作系统
当前位置 : 无忧IT编程网 > .NET开发 > asp.net专区 > 正文

ASP.NET 2.0预编译学习

来源:转载作者:无忧时间:08-01-24

    自从ASP.NET面市以来,开发人员一直都在要求(微软)出台一个解决办法,而ASP.NET 2.0利用预编译提供了一个有效的解决方案。

    ASP.NET 1.x的开发人员常常听到用户抱怨首次调用应用程序的时候会碰到初始化延迟。毕竟,初次请求会引发一个系列过程,包括运行库初始化、分析、把ASPX页面编译成中间语言、把方法即时编译成本地代码等等。  
  

    预编译选项 

    在首次启动应用程序的时候,ASP.NET会动态地分析和编译所有的ASP.NET文件(aspx页面),, ,运行环境要对编译的结果进行缓冲,以便更好地服务未来所有的请求。 

    在服务器重启或者Web服务器重启之后,第一次启动应用程序也意味着这一过程要重新开始。而且,对应用程序任何文件的改变都会被系统检测到,而在文件发生改变之后首次运行应用程序也会让这一过程再次发生。 

    很多Web开发人员都很讨厌这种初始化延迟。而预编译通过(预先)编译应用程序避免了这种延迟。 

    命令行 

    通过安装在.NET框架2.0里的aspnet_compiler.exe程序就能够启动预编译。它位于框架安装目录下(版本号会根据安装的框架的版本而有所不同)。下面就是这个程序默认的路径: 

    C:\\Microsoft.NET \Framework\v2.0.5072\aspnet_compiler.exe 

    您可以用-?这个命令参数查看该程序的所有参数列表,下面我就解释一下一些可用的参数: 

    m:这个参数表示您将使用完整的、应用程序将被预编译的IIS元数据库路径。IIS元数据库的路径是/LM/W3SVC/1/Root/应用程序名。 
    v:使用需要预编译Web应用程序的虚拟IIS路径。虚拟路径的格式是:/应用程序名。 
    p:使用需要预编译Web应用程序的物理IIS路径。它是包括驱动器名和指向应用程序目录的完整路径。举个例子c:\inetpub\wwwroot\应用程序名。v这个参数必须和p一起用,所以编译器能够解析任何应用程序的根参考。 
    f:表示目标目录是否要被覆盖。 
    u:用来设置预编译完的应用程序是可以更新的。这表示所有的标记文件(ASPX、ASCX等等)都可以在目标目录里进行更新。 
    targetDir:用于预编译应用程序文件的目标目录。下面的命令用虚拟路径和指定的目标路径预编译了一个应用程序:aspnet_compiler.exe –v /应用程序名 c:\目标目录名。 

    如果没有指定目标目录,那么结果文件会被放在ASP.NET的临时文件目录里,就像在ASP.NET运行库在首次调用应用程序的时候处理编译一样。临时目录默认的路径如下: 

    c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\应用程序名 

      

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 验证码: 验证码
查看所有评论
相关文章
站长推荐