2010-02-22 12 views
1

Il semble que LINQ-to-NHibernate et LINQ-to-SQL ne prennent pas en charge l'évaluation de court-circuit dans la clause de requête where.Évaluation de court-circuit et LINQ-to-NHibernate

Ai-je raison? Y a-t-il une solution de contournement? Peut-il être ajouté aux prochaines versions de LINQ-to-NHibernate et LINQ-to-SQL?

pour plus d'informations plz voir: suivants

The || (or) Operator in Linq with C#

Why ordinary laws in evaluting boolean expression does not fit into LINQ?

Répondre

0

Huh? Dans LinqToSql, votre requête C# dans le code est convertie en une arborescence d'expression, puis une instruction sql. L'instruction sql est transmise à mssqlserver, ce qui fait certainement du court-circuit.

Notez également que mssqlserver ne lance pas d'exceptions de référence nulles.

+0

selon http://stackoverflow.com/questions/2306302/pourquoi-ordinary-laws-in-evaluting-boolean-expression-does-not-fit-into-linq il y a quelques problèmes avec ça ... –

+0

Microsoft ne peut rien ajouter à linq to sql ou à sql server pour résoudre votre problème, car il ne se produit pas dans ces couches. –