Ich habe Code mit LINQ-Abfrage mit nHibernate und wenn es ausgeführt wird, wird ein PartialEvaluationExceptionExpression ausgelöst. Was genau bedeutet das und was kann ich dagegen tun?Was ist eine PartialEvaluationExceptionExpression und wie behebe ich sie?
SomeIqueryableNhibernateObject
.Where(x=>...
some expression
&& !Model.date.HasValue ? true : (x.fooDate.Date == Model.date.Value.Date)
&& some expresion
Wo Modell ist:
public class Filter
{
DateTime? date;
}
Ausnahme durch den falschen Weg des ternären Operator verursacht wird:
x.fooDate.Date == Model.date.Value.Date
Auch wenn ich ändern Sie es an:
x.fooDate != null && Model.date.HasValue && x.fooDate.Date == Model.date.Value.Date
es löst immer noch die Ausnahme aus.
Haben Sie in der Dokumentation zu "PartialEvaluationExceptionExpression" nachgeschaut, um zu sehen, was es darüber sagt, was diese Ausnahme bedeutet? – Servy
Ich war überrascht, aber ich konnte keine klare Information über diese Ausnahme finden. Zum Beispiel dies: http://www.nudoq.org/#!/Packages/NHibernate/NHibernate/PartialEvaluationExceptionExpression - es bietet meiner Meinung nach keine nützlichen Informationen. – Landeeyo
Das erste Google-Ergebnis für mich war das: http://www.nudoq.org/#!/Packages/Remotion.Linq/Remotion.Linq/PartialEvaluationExceptionExpression – Servy