Tengo este código para encontrar el nodo raíz de un árbol:¿Por qué el uso de un Guid nulo no funciona en esta consulta de linq?
Guid? currentNode = null;
var root = db.RecursiveTrees.Where(x => x.ParentId == currentNode).ToList();
Esta consulta devuelve 0 resultados.
Si me quedo esta consulta consigo devolvió el registro esperada:
var root = db.RecursiveTrees.Where(x => x.ParentId == null).ToList();
¿Por qué no la primera obra de consulta (utilizando la última versión del marco de la entidad)?
EDIT:
Solución:
List<RecursiveTree> root;
if (nodeid == null)
root = db.RecursiveTrees.Where(x => x.ParentId == null).ToList();
else
root = db.RecursiveTrees.Where(x => x.ParentId == new Guid(nodeid)).ToList();
gracias - voy a cambiar el código para evitar el filtrado de la anulable Guid – woggles
Todavía no se fija en EF 6.1.3. Si alguna vez fue arreglado, se rompe nuevamente. – David