【问题标题】:Building SL4 + RIAServices app takes too long on VS2010在 VS2010 上构建 SL4 + RIAServices 应用程序花费的时间太长
【发布时间】:2010-06-07 08:14:59
【问题描述】:

有一个安装了 VS2010 Premium 的 Win7 机器。 构建桌面应用程序工作得很好。 但是我们用 15 个 SL4 和 21 个桌面项目得到了这个解决方案……构建它的 SL 部分需要太长时间。这很烦人,并且鼓励放弃 TDD,因为每次我运行测试时,msbuild 需要大约 3 秒才能发现没有任何变化,应该跳过项目。这些项目非常小,没有什么花哨的东西,在我们从 VS2008+SL3 切换之前,我们没有任何问题。 我听说人们普遍抱怨 VS2010 的速度比比皆是,但对 SL4 的构建时间却一无所知。 有没有人遇到同样的问题,有什么解决方法吗?

【问题讨论】:

    标签: silverlight visual-studio-2010 performance build-time


    【解决方案1】:

    您需要这么多项目吗?根据经验,越少越好。你说项目非常小,这表明你可能不需要那么多。

    不要将它用于管理依赖项(避免循环)。如果您尝试管理“开发单元”或逻辑分组,请改用命名空间。

    物理/项目分离有利于将测试代码与生产代码隔离开来,并管理部署单元,但在您从中得到一些东西之前不要将其分离。

    Patricks Smaccia 写了一篇好文章 on when and when not to 创建程序集。

    解决问题的另一种方法是将您的解决方案分解为多个解决方案,然后 使用对其他解决方案生成的 dll 的引用。这样,您一次只能构建其中的一部分。如果您需要同时处理多个 dll,这很不方便,但这表明您的代码设计可能有问题。

    speeding vs.net up with many projects 上的这篇帖子也可能有所帮助。

    【讨论】:

    • 感谢您的链接。马上就读了但是,我仍然觉得构建花费这么多时间是不可接受的,并且我想知道可能的解决方法而不必合并项目。我不得不承认,在这种情况下,我们不需要这么多组件——这个软件对我们来说是一种技术评估。并且有可能在接下来的项目中,我们将不得不将解决方案极度模块化(插件架构)
    • 您正在运行代码分析吗?我们做的一件事是创建一个没有代码分析的构建配置。这使我们能够更快地构建。这在做 TDD 时工作得很好。使用插件架构,您绝对不需要将所有内容都保存在一个解决方案中。可能值得为每个插件提供单独的解决方案,引用核心程序集。如果您有大量标准插件,请将它们保存在一个项目中。 YMMV,当然。为您可以尝试的其他一些技巧添加了一个额外的答案链接。
    • 代码分析首先受到指责,而禁用它是第一件事。我已经尝试过在这个网站上找到的技巧 - 没有重大变化。正如我所提到的,该项目主要是一个技术评估,因此它非常不稳定 - 它有助于将所有东西都放在一个解决方案中。我们可以将事物拆分为多个解决方案,但是必须手动重新编译每个相关的解决方案是 IMO 无效且容易出错的。是的,我已经尝试过自动化构建过程,但是 RIAServices 一直在阻碍。无论如何,感谢您的努力。
    猜你喜欢
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-09
    • 2020-11-28
    相关资源
    最近更新 更多