关于PrecompiledApp.Config - TOMMYHU - 专注互联网开发及运营技术,提供相关资料及软件下载,奇趣网络时事评论!
Sep 1

关于PrecompiledApp.Config 不指定

tommyhu , 09:37 , ASP.NET , Comments(0) , Trackbacks(0) , Reads(4919) , Via Original Large | Medium | Small
在用Microsoft Visual Studio 2005开发ASP.NET网站时,当你开发完后,发布网站时,会生成一个PrecompiledApp.config文件,该文件内容如下:

这个文件是不能删除的,原因网友都有解释.现在想就PrecompiledApp.config文件还和Global.asax 文件中的事件有关联做一简单的分析.
在我们的多网站的设计方式中我们会根据不同的部署来设置多个webconfig文件,每个文件都有自己的独立的设置信息,因此我们可能会在启动应用时加载不同的webconfig,此时我们需要在global文件中在做处理.
例:

这个时候没有PrecompiledApp.config文件,此段代码是不会执行的.

一下部分是部分网友的描述:
----------------------------------------------------------------------------------------------------------------------------------
不能删除.PrecompiledApp.config 文件用于跟踪应用程序的部署方式,以及 ASP.NET 是否需要在请求时编译任何文件。
删除之后一些应用程序级的东西将无法使用.

---------------------------------------------------------------------
ASP.NET2.0的编译功能。预编译有三种方式
一、允许更新UI预编译
     也就是只编译cs的文件,像aspx的页面文件是不编译的。
二、不允许更新UI预编译
     也就是编译的时候不止编译cs文件连aspx页面文件和主题文件都编译。当然web.config配置文件和图片了什么的是不编译的。
三、强命名预编译
     这个不止编译源文件而且对编译后的文件进行强命名,这样他们不能随便替换你的dll文件。
     完成这个模块时我首先考虑前两种,因为用第三种有点小题大做故作高深之意。我就在前两种中徘徊,于是我就一直反复的测试前两种方法编译后的文件在客户的开 发中配合整体测试的便捷性。我想给客户最少最简单的文件,所以在做第二种方法的单独测试中,我删除了PrecompiledApp.config文件,然 后让IIS目录指向编译后的文件,结果显示“这是预编译工具生成的标记文件,不应被删除!”于是我就把PrecompiledApp.config文件加 上,结果才能正常显示。其实在发现是PrecompiledApp.config的影响的时候并不这么简单因为IIS有缓存,这个过程中你必须重启 IIS。最后一查才知道该文件是一个标记,它通知ASP.NET运行库该应用程序已经被预编译,所以没有他用第二种方法程序是不能正常显示的。
▲返回顶部
Last modified by tommyhu on2012/09/01 09:37

Add a comment

Nickname

emotemotemotemotemotemotemotemotemotemotemotemotemotemotemotemot