【问题标题】:Slow solution loading in visual studio 2008Visual Studio 2008 中的解决方案加载缓慢
【发布时间】:2010-10-25 09:49:48
【问题描述】:

我正在开发一个 ASP.NET 3.5 项目,该项目在一个解决方案中有 55 个项目。在 Visual Studio 2008 中打开解决方案时,需要一分钟多的时间才能打开 - 每个项目大约需要 1 秒。但是,如果我在打开解决方案之前断开网线,大约只需要 15 秒!关于什么可能导致放缓的任何想法?

【问题讨论】:

    标签: asp.net visual-studio visual-studio-2008


    【解决方案1】:

    在我们使用 Visual Source Safe 的时候,我也遇到过这种情况。

    如果您有受源代码控制的解决方案,可能是您的源代码控制插件要求更新。

    【讨论】:

      【解决方案2】:

      你应该做一些调查,启动Wireshark,在有问题的接口上开始捕获,看看有什么流量流过网络。

      【讨论】:

      • 感谢有关 Wireshark 的提示。我下载并运行它。假设我对结果的解释是正确的,由于 Visual Studio,我看到的唯一流量是大量 DNS 查询。我不知道它在查找什么,但我认为来自名称服务器的缓慢响应可能会导致延迟。
      • 对不起,保罗,复制了错误的链接...无论如何报告的问题是 VS 中最近使用的 (MRU) 列表包含一个指向不再存在的网络资源的链接。说明:weblogs.asp.net/achang/archive/2004/05/04/125645.aspx如何清除:blogs.msdn.com/benko/archive/2009/01/05/…
      • 感谢您的提示。不幸的是,我从注册表中删除了这些条目——没有区别。我想我只需要在启动 Visual Studio 之前一直拔掉网线。
      • 我认为您关于 DNS 查询的第一条评论值得进一步调查,我不是网络专家,但通过一些工作您应该能够追踪到它。祝你好运!
      【解决方案3】:

      我可以用问题来回答问题吗?让 VS 不只是因为那么多项目而死,更不用说在 60 秒内快速加载的秘诀是什么?

      在大约 10-12 个项目时,Visual Studio 上的编译时间变得难以忍受,在大约 5-8 个项目时,Resharper 会崩溃。 IDE 就是一个记忆猪,甚至通过使用多个 VS 实例打开更多项目通常也不是一种选择。

      无论如何,这都是关于内存使用的,奇怪的球出项目可能正在这样做,例如文件最多的那个。

      【讨论】:

      • 在没有网络连接的情况下,它会在大约 15 秒内加载。根据 Process Explorer 的说法,在使用 750,000K 的虚拟大小进行构建后,Visual Studio 的工作集大小约为 300,000K。所以拥有 2GB 的内存(至少)是非常有帮助的。导致问题的不是一个特定的项目。我可以在加载每个项目时查看底部的消息,每个项目花费的时间大致相同。
      【解决方案4】:

      这周我遇到了同样的问题(5 年后!!)。它是由一个巨大的 .suo 文件(将近 400 Mb)引起的,删除它可以解决问题。

      【讨论】:

        【解决方案5】:

        几年前,我记得一位同事遇到了一些类似的问题(解决方案要小得多,并且在 VS2003 中)。不记得细节,但我认为它与本地 ASPNET 用户帐户有关(或者更确切地说,它不存在)。不过不确定...

        附带说明:我通常发现在每个解决方案中可能包含几个项目会更有效(通常一个解决方案会生成一个或两个用于生产代码的程序集),然后运行一些 Visual Studio 实例同时。同一个解决方案中的 50 多个项目感觉就像是在自找麻烦。

        可能是您有其他依赖项,只是想分享我的想法。

        【讨论】:

          【解决方案6】:

          一个解决方案中有 55 个项目

          哇。我无法想象什么样的解决方案需要这么多项目。答案可能是您的源代码控制提供者需要刷新每个项目的状态,所有这些都需要时间。

          对于 edit-merge-commit 样式的版本控制系统,例如 subversion,不会发生此操作。尝试暂时从整个解决方案中删除源代码控制,看看这是否是罪魁祸首。

          【讨论】:

            【解决方案7】:

            如果您的解决方案附加到源代码管理,那么它会尝试加载符号并验证您已签出哪些项目。因此,如果您的连接速度较慢,将解决方案离线通常会更快。

            http://www.tmgirvin.com/2009/03/working-offline-with-visual-studio-2008-and-tfs.html

            编辑 我见过的另一种解决方案, 创建一个 _webTier.sln _database.sln _build.sln (是你的项目名称)

            这些解决方案中的每一个都是整个项目的一个自给自足的部分,但是如果您在 webtier 上工作并且不需要加载数据库项目或移动项目部分,您可以只打开 webtier 解决方案。

            构建解决方案包含需要构建的整个包,并且需要很长时间才能加载。

            【讨论】:

              【解决方案8】:

              我在没有互联网连接的开发机器上遇到了这个问题,结果发现问题与 IE 的互联网选项中的设置有关:

              控制面板 -> Internet 选项 -> 高级 -> 安全 -> 检查 发布者证书吊销

              确保取消选中后,我的解决方案再次开始快速加载。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2010-09-18
                • 2015-11-28
                • 2013-07-22
                相关资源
                最近更新 更多