Mar*_*sar 9 asp.net asp.net-mvc
我们有一个项目,如果Views的.cshtml文件中有任何错误,我们希望构建视图以生成编译时错误.
不过,编译时间大幅增加:
MvcBuildViews = true
需要62秒MvcBuildViews = false
需要9秒这是可以接受的吗?因为增加是非常激烈的,我们不能忍受等待这样的编译时间.我们可以用任何方式改进这样的编译吗?
到目前为止,该项目包含130个视图和部分视图(.cshtml文件).这被认为是大/中/小?
Ara*_*ram 12
我认为有可能编译视图本身是一件好事,但我也不能等待那么久.所以我更喜欢MvcBuildViews = true
在ProperyGroup
Release中添加它,以便您只在Release版本时和部署之前编译视图
属性组应如下所示:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
Run Code Online (Sandbox Code Playgroud)
所以把你的
<MvcBuildViews>true</MvcBuildViews>
Run Code Online (Sandbox Code Playgroud)
在此Release块中.这样你仍然可以编译你的视图一次而不是每次尝试调试时...
我们也遇到了同样的问题。我们开始编译视图,以便发现集成测试和用户体验测试期间出现的明显问题。更糟糕的是错误不知何故潜入了生产环境。
但是,正如您所注意到的,我们的构建时间变得难以忍受。和您一样,我们的开发人员进行了无数次构建,这成为了我们这一天的主要部分。我们开玩笑说午饭后进行测试,这样我们就可以在外出时完成构建。
我们最终转向在用户体验测试之前进行构建。
现在我们正在转向预编译。目前我们团队中只有一个人采用了它,并且显然预编译明显优于构建(增量与总体)。设置基本上就是一个 nuget fetch。
这些文章应该是一个好的开始
http://stacktoheap.com/blog/2013/01/19/precompiling-razor-views-in-asp-dot-net-mvc-3/
http://blog.davidebbo.com/2011/06/precompile-your-mvc-views-using.html
归档时间: |
|
查看次数: |
4110 次 |
最近记录: |