如何在 Visual Studio 2010 中更快地调试 ASP.NET 应用程序

问题描述 投票:0回答:5

我对调试感到非常沮丧,但也许我只是做错了。

当我积极开发时,编写一些代码是非常麻烦的,启动调试器来测试所述代码,等待调试器启动,在浏览器中查看页面,停止调试器,编辑代码,冲洗,起泡沫,重复。

我可以在开发过程中使用 CTRL-F5 和 CTRL-SHIFT-B 来解决这个问题,但我失去了调试器的所有好处。

是否有更好的方法来使用调试器,或者我可以采取其他措施来快速重建和使用调试器?

谢谢,

凯尔

附注我/我们确实编写单元测试,但您还需要在浏览器中测试您的应用程序,因此请不要“如果您的单元测试编写正确,您就不应该遇到此问题。”评论;)

更新

感谢您“获得更好的机器”的建议。我在那里无能为力。大量 RAM 和英特尔 SSD。我不需要超过 2500 美元的机器来编写 Web 应用程序。

asp.net visual-studio debugging visual-studio-2010
5个回答
5
投票

减少调试次数:如果您要停止调试器来更改值或测试不同的场景,则不要这样做。调试时,您可以使用

QuickWatch
Immediate Window
更改变量的值。

降低调试成本:关闭批处理将使您的页面首次加载速度更快,因为它将不再预编译所有页面和用户控件。如果您经常进行更改,这对开发很有好处。

<compilation ... batch="false"> ...</compilation>

5
投票

你应该看看这篇文章(由 Scott Guthrie 发推文):

无需任何艰苦工作即可缩短 ASP.NET 编译/加载时间 http://blog.lavablast.com/post/2010/12/01/Slash-your-ASPNET-compileload-time.aspx

总结

  1. 获得更好的硬件(影响很大)
  2. 将临时 IIS 文件存储在最快的磁盘或 RAM 磁盘上,例如
    <compilation ... tempDirectory="q:\temp\iistemp\"> ... </compilation>
  3. 重组您的项目
    • 有选择地建设必要的项目
  4. 回顾一些神奇的设置(影响最大)

3
投票

获取 SSD 和大量 RAM。


2
投票

也许你需要的不是调试得更快,而是减少需要调试的次数。也许更自由的 Debug.* 或跟踪日志记录方法会有所帮助。

@Kyle West - 嗯...有很多不同的方法可以解决这个问题。最适合我的方法是使用 MS Enterprise Library Logging 应用程序块(主站点)将事件记录到滚动的每日文件中。只需编辑

.config
文件即可提高日志级别(详细信息)或降低(仅限例外)。

应用程序块中有很多内容,因此我们围绕日志记录调用创建了一个包装器,以便我们可以更轻松地进行重要的调用。例如,

DebugEvent.Log(String.Format("the value of _myVariable is {0}", _myVariable))
InfoEvent.Log("Reached the entry to the gatesOfHell method")
ExceptionEvent.Log(ex)

EL 的好处是您可以更改配置而无需更改代码。因此,如果您想记录事件日志甚至电子邮件,只需几行配置即可。

您还可以替换任何其他记录器(log4Net 等),或以对您有用的方式使用内置的 DebugTrace

“我真的只是想看到任何不影响 UI 的异常。”有点令人担忧,并且意味着正在发生异常吞没或一些类似的不良实践。 (这完全是另外一桶“公鸡”,可能就是您必须进行如此多调试的原因)。


0
投票
Watin

这样的工具,它允许您编写浏览器交互脚本,但我认为这并不是您真正想要的。 我想这里的答案是“获得更快的机器”...

© www.soinside.com 2019 - 2024. All rights reserved.