Compartir a través de


Depurar consultas LINQ to DataSet

Visual Studio 2010 permite depurar el código LINQ to DataSet. Sin embargo, existen algunas diferencias entre depurar código LINQ to DataSet y depurar código administrado que no es LINQ to DataSet. La mayor parte de las características de depuración funcionan con instrucciones LINQ to DataSet, entre ellas la función de examen, de establecimiento de puntos de interrupción y el examen de resultados que se muestran en la ventana del depurador. Sin embargo, la ejecución de consultas en diferido conlleva algunos efectos secundarios que se deben tener en cuenta al depurar código LINQ to DataSet y hay algunas limitaciones para utilizar Editar y continuar. En este tema se tratan aspectos de depuración únicos para LINQ to DataSet en comparación con código administrado que no es LINQ to DataSet

Ver los resultados

Puede ver el resultado de una instrucción LINQ to DataSet mediante Información sobre datos, ventana Inspección y cuadro de diálogo Inspección rápida. Al usar una ventana de código fuente, puede pausar el puntero en una consulta en la ventana de código fuente para que aparezca una información sobre datos. Puede copiar una variable LINQ to DataSet y pegarla en la ventana Inspección o en el cuadro de diálogo Inspección rápida. En LINQ to DataSet, una consulta no se evalúa cuando se crea o declara, pero únicamente cuando se ejecuta. Esto se denomina ejecución aplazada. Por consiguiente, la variable de consulta no tiene un valor hasta que se evalúe. Para obtener más información, vea Consultas en LINQ to DataSet.

Para mostrar el resultado de una consulta, el depurador debe evaluarla. Esta evaluación implícita se produce cuando aparece un resultado de la consulta LINQ to DataSet en el depurador y tiene algunos efectos que debería considerar. Cada evaluación de la consulta lleva tiempo. Expandir el nodo de resultados lleva tiempo. Para algunas consultas, la evaluación repetida podría producir una reducción notable del rendimiento. Evaluar una consulta también puede producir efectos secundarios, que son cambios en el valor de los datos o en el estado del programa. No todas las consultas tienen los efectos secundarios. Para determinar si una consulta se puede evaluar sin ningún riesgo ni efectos secundarios, debe entender el código que implementa la consulta. Para obtener más información, vea Expresiones y efectos secundarios.

Editar y continuar

Editar y continuar no admite los cambios a las consultas LINQ to DataSet. Si agrega, quita o cambia una instrucción LINQ to DataSet durante una sesión de depuración, aparece un cuadro de diálogo indicando que Editar y continuar no admite el cambio. En ese momento, puede deshacer los cambios o detener la sesión de depuración y reiniciar una nueva sesión con el código revisado.

Además, Editar y continuar no permite cambiar el tipo o el valor de una variable que se usa en una instrucción LINQ to DataSet. De nuevo, puede deshacer los cambios o detener y reiniciar la sesión de depuración.

En Visual C# 2010, no puede usar Editar y continuar en cualquier código en un método que contiene una consulta LINQ to DataSet.

En Visual Basic 2010, puede usar Editar y continuar en código sin LINQ to DataSet, incluso en un método que contiene una consulta LINQ to DataSet. Puede agregar o quitar el código antes de la instrucción LINQ to DataSet, incluso si los cambios afectan al número de línea de la consulta LINQ to DataSetLINQ. La experiencia en depuración de Visual Basic para código sin LINQ to DataSet es igual que antes de incluir LINQ to DataSet. No se puede cambiar, agregar o quitar una consulta LINQ to DataSet, a menos que desee detener la depuración para aplicar los cambios.

Vea también

Otros recursos

Depurar código administrado

Guía de programación (LINQ to DataSet)