1

我们有一个相当大的 .NET 网站(不是 Web 应用程序)项目,在访问网站上的页面后,在对 App_Code 或 DLL 依赖项进行任何更改后,构建该项目大约需要 3 分钟。通过将编译设置配置为打开 optimizeCompilations 并关闭 Batching,我们可以将其缩短到 30 秒。这太棒了。

但是,出于某种原因,关闭批处理 ( <compilation batch="false"/>) 似乎会导致 Visual Studio 2008 的编译速度要慢得多——从 3 分钟左右到接近 15 分钟。确保我们不会破坏构建真的不是很酷在签入之前,并且也很糟糕,因为 VS 在那段时间里把我们所有的文件都变成了只读的。这对于编译我们的类库项目和验证站点来说都比较慢(在网站应用程序中,除了检查您的页面是否应该实际编译之外,它实际上并没有做任何事情)。

所以我的问题是:我可以在 .config 文件中的某个地方设置编译设置,它只会影响 IIS,但不会影响 Visual Studio 本身?

4

1 回答 1

1

<compilation>只要您更新了 Visual Studio,就应该能够为节点使用外部配置文件。

http://connect.microsoft.com/VisualStudio/feedback/details/312199/using-configsource-for-system-web-compilation-section-breaks-debugging-in-vs2008

所以你的 web.config 看起来像这样

<compilation configSource="compilation.config" />

并且在您的开发盒和 IIS 上有一个不同的编译配置文件

<compilation debug="true" batch="false">
</compilation>

<compilation debug="false" batch="true">
</compilation>
于 2011-01-25T00:01:25.387 回答