在ASP.NET 1.1的编译标记中添加batch =“false”的目的是什么?
答案 0 :(得分:18)
MSDN说明了批处理标志的目的
消除了您所需的编译所造成的延迟 第一次访问文件。当此属性设置为True时, ASP.NET以批处理模式预编译所有未编译的文件 第一次编译文件时会导致更长的延迟。 但是,在此初始延迟之后,编译延迟被消除 在后续访问文件时。
将它设置为false可能会使它第一次编译得更快,但后续时间更慢,我相信这也适用于1.1。
答案 1 :(得分:12)
我知道这个问题已经关闭(关于v1.1),但批量属性实际上在.Net 2.0以后默认为True。
http://msdn.microsoft.com/en-us/library/s10awwz0%28VS.80%29.aspx
答案 2 :(得分:3)
在asp.net 1.1中,当你在“批处理模式”下编译为true时,根据目录,文件类型等将源文件的输出编译成单个程序集。当“批处理模式”是关闭后,输出是整个项目的单个程序集。
本small paragraph from an MSDN article中描述了一些优点和缺点。
使用此功能时,您应该注意几个问题 属性。
- Performance-当Batch = false时,ASP.NET编译器将为Web应用程序中的每个Web表单和用户控件创建一个程序集。 它还会使编译器执行完全编译,而不是增量编译 在使用F5构建时在Visual Studio 2005中编译。最终结果 您的Web应用程序在部署和构建时可能会运行得更慢 Visual Studio 2005中的时间会显着增加。
- 程序集引用 - Batch属性可以隐藏潜在的破坏程序集引用(当Batch = True时),甚至引入循环 参考(当Batch = False时)。
答案 3 :(得分:1)
我认为默认值为false(在2.0以上),因此添加batch=false
的点将作为默认文档或占位符的文档,因此如果您想要的话,显然需要更改。< / p>