Estoy disfrutando de las características de Entity Framework Plus sobre Entity Framework 6 desde hace unas horas, y especialmente su IncludeFilter .
Con Entity Framework 6 regular, pude simplemente llamar a ToString () en un IQueryable para obtener fácilmente la consulta SELECT que se procesará realmente en el servidor DB.
Pero con EF +, cuando aplico un IncludeFilter, solo obtengo:
Z.EntityFramework.Plus.QueryIncludeFilterParentQueryable`1[MyRecord]
Porque ToString()
parece no estar sobrecargado de la misma manera en EF +.
¿Hay alguna manera de generar SQL para consultas "IncludeFilter" y para consultas clásicas?
Sé que podría obtenerlo en el servidor SQL con las herramientas de creación de perfiles adecuadas, pero me gustaría poder hacerlo en el lado del código en EF.
¿Hay alguna manera de generar SQL para consultas "IncludeFilter" y para consultas clásicas?
No, actualmente no hay forma.
Puede llegar más tarde, pero en este momento, la biblioteca no ofrece esta función.
(Soy el dueño)
EDITAR: Responder comentario
Mi principal preocupación era saber si las consultas generadas están optimizadas
No los llamaría optimizados. Son generados por Entity Framework y nada está realmente modificado de nuestro lado.
Include
en EF6 Include
en EF Core Puede usar el registro del contexto actual para rastrear todas las solicitudes realizadas en esta instancia
context.Database.Log = s => Console.WriteLine(s);