如何在调试模式下筛选数据表行

本文关键字:筛选 数据表 模式 调试 | 更新日期: 2023-09-27 18:29:39

我编写了一个使用强类型数据集和适配器的应用程序。

首先,它从数据库中读取数据并将其存储到类型化的数据表中。其次,此应用程序处理此数据表(添加、删除或更新行),最后将更新的数据写回数据库。

在更新的步骤上,有时应用程序会导致的异常

违反PRIMARY KEY约束"PK_GPS_Events_History"。无法在对象"dbo.GPS_Events_History"中插入重复的密钥。重复的密钥值为(16805552)。

语句已终止"}System.Exception{System.Data.SqlClient.SqlException}

出现异常时的表GPS_Events_History包含约30000行。如何过滤数据表中的数据以查看ID=16805552的这一行?我试图通过以下代码过滤它:

dataTable.where(row => row.ID == 16805552)

但VS2010不允许我在调试器变量窗口中输入任何LINQ表达式。

如何在调试模式下筛选数据表行

将要调试的结果保存到变量中,然后检查变量:

var testData = dataTable.Where(row => row.ID == 16805552);
//once the line above has executed, quickwatch the "testData" variable

你不能把lambdas放在快速观察窗口中,所以这是下一个最好的东西。

我在快速观察窗口中输入了以下命令,它解决了问题:

Select("ID = 16805552")