Allow marking a Linq extension as db only
Description
Environment
None
Activity
Show:

Frédéric Delaporte May 7, 2017 at 1:03 PMEdited
Since https://nhibernate.jira.com/browse/NH-3961#icft=NH-3961 (v5), those exceptions do no more cause a query failure. They are silently swallowed. Better avoid them still.
For this, we need a Relinq v2 feature. So we need NH-3944. A closed PR for https://nhibernate.jira.com/browse/NH-3944#icft=NH-3944 is implementing this feature, with some discussion about it on another NH 3944 PR.
https://nhibernate.jira.com/browse/NH-3386#icft=NH-3386 somewhat depends on it although already resolved, because it will change its resolution.
Fixed
Details
Details
Assignee

Reporter

Components
Fix versions
Affects versions
Priority
Who's Looking?
Open Who's Looking?
Created May 7, 2017 at 12:51 PM
Updated August 25, 2017 at 11:17 AM
Resolved August 25, 2017 at 11:17 AM
Who's Looking?
NHibernate (<v5) always tries to evaluate with .Net runtime the Linq expression as much as possible.
On extensions being translatable to HQL but being never evaluatable (always throwing exceptions due to being not .Net implemented), this causes a query failure if the extension is considered evaluatable by ReLinq (extension not applied on an entity but only on constants).
Allow marking Linq extension as evaluatable only db side for avoiding those exception throws.