减少Workflow Foundation项目的构建时间

h.a*_*lex 1 performance build visual-studio workflow-foundation-4

我正在开发一个WF项目,其中包含许多进程和代码活动.该项目建设时间过长(比解决方案中的任何其他项目多20-30倍).

我已经向谷歌询问了这一点,但似乎没有任何信息.

请问,如何减少Workflow Foundation项目的构建时间?

Ach*_*him 5

主要部分可能是所有基于XAML的复合活动在构建期间都得到验证.这意味着,他们得到了实例化!

您可以使用csproj文件中的未记录设置将其关闭:

  <SkipWorkflowValidation>true</SkipWorkflowValidation>
  <DisableWorkflowCompiledExpressions>true</DisableWorkflowCompiledExpressions>
Run Code Online (Sandbox Code Playgroud)

必须将此设置添加到所有配置部分(相关元素,通常,您需要在所有配置中执行此操作).

可以通过以下步骤在Visual Studio中编辑项目文件(csproj或vbproj扩展):

  • 在解决方案资源管理器中右键单击项目,然后选择"卸载项目"
  • 右键单击卸载的项目(现在显示为"(不可用")后缀),然后选择"编辑"
  • 项目文件在Visual Studio编辑器中打开,您可以手动编辑它.

编辑完文件后,可以在解决方案资源管理器中右键单击该项目,然后选择"重新加载项目".

试试看,然后观看构建时间.但请注意,这将在构建期间跳过一些可能有价值的测试...

  • 我们收到了MS的支持电话,我获得了这些信息.我们遇到了另一个问题:在构建期间实例化活动会引发异常,因为我们的某些活动需要一个特殊的运行时环境来正常运行,这在构建时不存在.所以构建过程因为这个实例化而失败 - 甚至比构建时间长:) (2认同)