假设我们有几个开发人员在 ASP 服务器上工作。偶尔页面会导致编译错误(但它是站点范围的)。如果我们中的一个人在去吃午饭之前点击了保存,而其他人无法在他们自己的 aspx 页面上工作,这尤其令人讨厌。
任何设置只允许特定于页面的编译,还是 w3c 服务的性质使得所有程序集都必须编译(应用程序范围)?
假设我们有几个开发人员在 ASP 服务器上工作。偶尔页面会导致编译错误(但它是站点范围的)。如果我们中的一个人在去吃午饭之前点击了保存,而其他人无法在他们自己的 aspx 页面上工作,这尤其令人讨厌。
任何设置只允许特定于页面的编译,还是 w3c 服务的性质使得所有程序集都必须编译(应用程序范围)?
您已启用预编译。如果你把它关掉,页面只会在第一次请求时被解析和编译,我想这就是你想要的!
预编译由 AspNetCompiler 完成。如果这不是由自定义构建过程触发的,则可能在 .csproj 文件中。它的外观可能因项目类型而异。
以下是它在 MVC 3.0 Web 角色中的外观:
<!-- no precompilation here! -->
<MvcBuildViews>false</MvcBuildViews>
<!-- here's the setup for AspNetCompiler...-->
<Target Name="MvcBuildViews" AfterTargets="AfterBuild"
Condition="'$(MvcBuildViews)'=='true'">
<AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" />
</Target>
有关 AspNetCompiler 的更多信息:http: //msdn.microsoft.com/en-us/library/ms164291.aspx
通常情况下,预编译默认是关闭的。如果您确实想要全面检查所有视图的代码,此设置也很有用。