2010-11-18 6 views
2

J'ai fait la déclaration suivante (en utilisant RavenDB):problème dans la clause WHERE de la valeur nulle dans RavenDB

session.Query<Container>().Where(c=>c.ParentId == null).Count(); 

Quand je lance ce qui précède, le compte est toujours 0, mais si je fais ceci:

session.Query<Container>().ToList().Where(c=>c.ParentId == null).Count(); 

Renvoie le nombre correct.

Quelqu'un at-il la moindre idée sur la façon d'y parvenir? RavenDb a-t-il un traitement différent de la valeur null dans sa requête?

- MISE À JOUR -

J'ai testé les déclarations ci-dessus dans localhost: 8080 plutôt qu'avant (ce qui est dans le déploiement IIS, sur l'hôte distant) et cela fonctionne. Peut-être que c'est mon problème de configuration IIS?

Répondre

1

Vous avez raison RavenDB gère null différemment (parce qu'il utilise Lucene sous le capot).

Je vous recommande de poster ceci sur la liste de diffusion, afin qu'il puisse être réparé. Voir http://groups.google.com/group/ravendb.

+0

Oui, j'ai posté là-bas. Devrais-je simplement utiliser Lucene pour contourner ce problème? – xandy

+0

Ouais c'est un moyen, voir http://www.ravendb.net/faq/lucene-queries-examples –