热搜词
发表于 2014-2-20 15:33:12 | 显示全部楼层 |阅读模式
如果需要如标题所述的需要,可以使用.net framework中的aspnet_compiler工具,使用方法如下。
比如我们现在编译的应用程序,虚拟目录是aspnet,实际物理路径是E:\aspnet,我们编译后的目标路径是E:\www,那么我们只要执行如下命令就可以了:
aspnet_compiler -v /Aspnet -p E:\aspnet E:\www

     执行完成后,我们发现E盘下生成了www的目录,里边的子目录App_Code和所有.cs文件都不见了,还有master页及其代码.cs文件也不见了。多了一个bin目录(里边是些.compiled和dll文件)和一个PrecompiledApp.config文件。其实这时候.aspx文件也被编译了,只是它作为一个标记文件还存在,实际上没有任何实质性的内容(我们发现这时候每个aspx文件的内容都是“这是预编译工具生成的标记文件,不应被删除!”,其实删了也无所谓)。
        aspnet_compiler是个很不错的工具,用来预编译ASP.NET应用程序。打开Visual Studio 2005命令提示就可以执行了。详细的可以aspner_compiler -?看看帮助。
aspner_compiler 地址:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
下面是一个我在实际使用过程中的例子:
首先新建一个网站,建一个名为IMG.ASPX的页面来生成验证码,而我想封装这个页面。
使用上述的命令后,加入E:\www文件夹下会有一个dll文件,我这名为“App_Web_krtwag-s.dll”,然后就可以在其他项目中添加引用,然后建立一个无后台的空页面,将页面头部的Inherits属性更改为"IMG,App_Web_krtwag-s" 之后运行页面就会得到和封装前IMG.aspx页面运行相同的效果
全部评论0
回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-11-25 07:44 , Processed in 0.151513 second(s), 22 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team