在ASP.NET 1.1的编译标签中添加batch="false"的目的是什么?

有帮助吗?

解决方案

MSDN说批料标记的目的

  

消除需要引起由编译的延迟时   访问文件的第一次。当此属性设置为True,   ASP.NET预编译在批处理模式下,所有未编译的文件,这   导致甚至更长的延迟第一次文件编译。   然而,这个初始延迟之后,编译延迟被消除   上的文件的后续访问。

有其设置为false将可能使编译更快的第一次,但速度较慢随后的时间,我相信这也适用于1.1为好。

MSDN链接

其他提示

我知道这个问题被关闭(与约1.1版),但该批次属性实际上是默认为True NET 2.0起。

http://msdn.microsoft.com/ EN-US /库/ s10awwz0%28VS.80%29.aspx

在 asp.net 1.1 中,当您在设置为 true 的“批处理模式”下进行编译时,源文件的输出将根据目录、文件类型等编译为单个程序集。关闭“批处理模式”时,输出是整个项目的单个程序集。

本节描述了一些优点和缺点 MSDN 文章中的一小段.

使用此属性时,您应该注意几个问题。

  • 性能—当 Batch=false 时,ASP.NET 编译器将为 Web 应用程序中的每个 Web 窗体和用户控件创建一个程序集。这也会导致编译器在使用F5构建时在Visual Studio 2005中进行完整的编译,而不是增量编译。最终结果是您的Web应用程序在部署时运行速度可能会较慢,并且在Visual Studio 2005中,您的构建时间将大大增加。
  • 汇编引用 - 批处理属性可能会隐藏潜在的损坏的汇编引用(当批处理= true时),甚至引入圆形参考(当batch = false时)。

我相信默认为false(是2.0+),因此增加batch=false点会作为默认的文件,或者作为一个占位符,所以很明显要改变什么,如果你想真正的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top