【问题标题】:Reduce Workflow Foundation project build time减少 Workflow Foundation 项目构建时间
【发布时间】:2015-07-29 09:51:43
【问题描述】:

我正在处理一个包含许多流程和代码活动的 WF 项目。 该项目的构建时间太长(比解决方案中的任何其他项目多 20-30 倍)。

我已经向谷歌询问过这个问题,但似乎没有任何信息。

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

【问题讨论】:

    标签: performance visual-studio build workflow-foundation-4


    【解决方案1】:

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

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

      <SkipWorkflowValidation>true</SkipWorkflowValidation>
      <DisableWorkflowCompiledExpressions>true</DisableWorkflowCompiledExpressions>
    

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

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

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

    完成文件编辑后,您可以在解决方案资源管理器中右键单击项目并选择“重新加载项目”。

    尝试一下并观察构建时间。但请注意,这将在构建期间跳过一些可能有价值的测试......

    【讨论】:

    • 令人兴奋!有效。请问这个是在哪里找到的?而且,跳过的测试是什么?谢谢!
    • 我们在 MS 打了一个支持电话,我从那里得到了这些信息。我们遇到了另一个问题:在构建时实例化活动会引发异常,因为我们的某些活动需要特殊的运行时环境才能正常运行,而构建时不存在。因此,由于这种实例化,构建过程失败了——甚至比构建时间长:)
    • 我不确定 MS 通常在构建期间对活动做了什么,从这些设置的名称我只能猜测他们试图在构建时确定活动将可以毫无问题地运行之后。 “及早发现问题”通常是一种很好的模式。
    • 除非您浪费开发人员数量 x 每天构建数量 x 15 秒时间 :) 具有“未优化”构建配置的构建服务器可以检测到问题。每个人都可以使用节省的时间来修复它们。 如果有。感谢您的帮助。
    猜你喜欢
    • 2018-07-11
    • 1970-01-01
    • 1970-01-01
    • 2011-07-04
    • 1970-01-01
    • 2016-09-11
    • 1970-01-01
    • 1970-01-01
    • 2019-11-16
    相关资源
    最近更新 更多