2010-03-16 18 views
12

A menudo recibo en una posición cuando necesito saber por qué mi no funciona como se pretende LINQ ... utilizo colecciones de objetos y extensiones.necesita depurar LINQ consultas sencillas en Visual Studio 2010

no quiero pasar más de dos minutos sobre el mismo. Se supone que LINQ hizo la vida del desarrollador más fácil, no más difícil.

me esperaba VS 2010 tendrá que fija pero ahora utilizar RC y aún no funciona me deja escribo LINQ y comprobar lo que está pasando ... dice que antes "Expresión no puede contener expresiones lambda" ...

¿Hay algún complemento para Visual Studio para que pueda rápidamente y ejecutar efectivamente consultas ad-hoc y averiguar qué está pasando y dónde estoy equivocado?

Respuesta

5

No es un plugin de VS, pero es gratis y es impresionante: LinqPad

Check it out here

Puede ejecutar cualquier LINQ o fragmento de código en general, simplemente le dan un aspecto, se trata de una herramienta increíblemente útil, para linq y más.

+0

aunque esto no es exactamente lo que necesito (porque el punto principal para usar algo con VS es poder parar en el punto de interrupción y jugar con la colección existente de objetos y ver qué salió mal ... ¡Pero el bloc es brillante! Leí artículos de Albahari antes ... ¡Es genial! –

+0

@downvoter - ¿me gustaría comentar? –

5

¿Has probado esto?

Debugging LINQ Queries

consultas LINQ depuración pueden ser problemática. Una de las razones es que muy a menudo, se escribe una gran consulta como una sola expresión, y que No se puede establecer un punto de interrupción a mediados de expresión. Escribir consultas grandes en la expresión contexto es particularmente potente cuando utilizando la construcción funcional para formar XML (o utilizando el fuertemente tipado DOM en Open XML SDK V2). Este post presenta un pequeño truco que hace que sea más fácil de usar el depurador con LINQ consultas que se escriben utilizando ‘método sintaxis’.

+0

buen consejo. Gracias. –

+0

técnica muy interesante +1 - elimíname también ... – ppumkin

1

VS 2010 no va a abordar este ..

Hay, de hecho, un plugin como usted describe, pero por desgracia, es altamente expiremental. Es probable que tenga que instalar el SDK VS2008 y el Servicio de paquetes para que funcione - Sé que lo hice ..

Aquí está el enlace: http://extendedimmediatewin.codeplex.com/