Existe um aplicativo para exibir algum tipo de plano de consulta para uma consulta LINQ to objeto?
-
05-07-2019 - |
Pergunta
Eu estou procurando um aplicativo para mostrar o que uma expressão linq faria, em especial sobre o uso de múltiplo acesso para a mesma lista em uma consulta.
Melhor ainda, a ferramenta iria dizer se a consulta linq é bom.
Solução
Eu usei o árvore de expressão visualizador no passado para a menos decodificação de ajuda que está dentro de uma árvore de expressão. Ela ajuda na figureing as partes da árvore e como dá a cada parte está relacionada.
Outras dicas
Bem, para começar, eu poderia facilmente prever uma ferramenta que iria pegar uma consulta para além e detectar que a cláusula WHERE é a implementação de tempo de execução padrão, e, portanto, não examinar esse método, mas "sabe" o que o plano de execução para esse método seria, e poderia, assim, juntar um plano para toda a consulta.
-se direito até o ponto onde você introduzir um provedor de Linq personalizada, onde a única maneira de descobrir o que ele vai estar fazendo seria ler o código.
Então, eu ouso dizer que não existe tal ferramenta, e fazendo um seria muito difícil.
seria divertido para tentar embora, pelo menos para as classes padrão, seria um visualizador de depuração útil para Visual Studio.
Que tal fazer você mesmo a ferramenta ?! ;)
Dê uma olhada na Árvores de expressão , eu acredito que eles podem ser úteis