调试时如何“运行直到此变量更改”?

| 在调试C#时,我经常想知道变量的值何时更改,然后调查程序的状态。 目前,我这样做是这样的: 监视列出有问题的变量。 实际发送垃圾邮件F10(“跳过”的快捷方式),直到看到值更改为止。 但是,所需的F10数量很烦人。 我想这肯定是自动化的。但是我在Microsoft Visual C#Express中找不到此功能,这让我感到惊讶。毕竟,监视列表会自动以亮红色突出显示已更改的值。 我想念什么吗?     
已邀请:
        Express版的简单技巧:
private string myValue;
public string MyValue
{
  set
  {
    if (this.myValue != value) Debugger.Break();
    this.myValue = value;
  }
}
    
        条件断点是您要执行的操作,但似乎在Visual Studio Express中不可用。 在Visual Studio(非Express)中,其工作方式是创建一个条件断点,该断点的表达式等于您的监视值,并以“已更改”作为断点条件。     
        这是我在Visual Studio中执行的方法。通过按F9或单击最左边的空白来设置断点。然后右键单击出现的红点,然后选择“条件”命令。还有其他选择。 但是,Visual Studio Express中可能不支持此功能。     
        您可以使用条件断点 看到这个     
        您可以编写一个if语句来检查更改,并在该if语句中产生一个断点,因此它最初会中断,然后单击resume,它会一直持续到到达此断点为止。     
        根据某些运行时条件使用Debugger.Break,或右键单击某个断点,然后选择条件断点->已更改 编辑:不知道这在快递     
         将断点设置在您希望代码暂停的位置 打开“断点”窗口(调试-> Windows->断点) 右键单击断点,然后选择“条件...”。 将条件设置为变量名称,然后选择“已更改”单选按钮。 单击确定,然后按照常规进行调试:)     
        如果要在某个断点处捕获变量更改,而不是准确捕获更​​改位置,则设置断点,右键单击该断点,然后选择\“ Condition \”。假设您的变量名是X,当前值是A。在条件字段中输入\“ X!= A \”。 现在,仅当X更改为A以外的其他值时,才会命中断点。     

要回复问题请先登录注册