forked from zzzprojects/EntityFramework-Plus
- Notifications
You must be signed in to change notification settings - Fork 0
EF LINQ Dynamic
ZZZ Projects edited this page Mar 22, 2016 · 3 revisions
LINQ Dynamic in Entity Framework is supported through the Eval-Expression.NET Library.
It's free up to 50 characters
All LINQ predicate methods are supported. A string expression which return a Boolean function can be used as parameter.
- Deferred
- SkipWhile
- TakeWhile
- Where
- Immediate
- All
- Any
- Count
- First
- FirstOrDefault
- Last
- LastOrDefault
- LongCount
- Single
- SingleOrDefault
var list = ctx.Where(x => "x > 2").ToList(); var list = ctx.Where(x => "x > y", new { y = 2 }).ToList();All LINQ selector and order are supported. Most of them require the “Dynamic” suffix to not override default behavior (Ordering or selecting by a string is valid).
- OrderByDescendingDynamic
- OrderByDynamic
- SelectDynamic
- SelectMany
- ThenByDescendingDynamic
- ThenByDynamic
var list = ctx.SelectDynamic(x => "new { y = x + 1 }").ToList(); var list = ctx.SelectDynamic(x => "new { y = x + 1 }", new { y = 1 }).ToList();var list = new List<int>() { 5, 2, 4, 1, 3 }; var list2 = list.OrderByDynamic(x => "x + 1"); var list3 = list.OrderByDynamic(x => "x + y", new { y = 1 });The Execute method is the LINQ Dynamic ultimate methods which let you evaluate and execute a dynamic expression and return the result.
- Execute
- Execute<TResult>
var list = ctx.Execute<IEnumerable<int>>("Where(x => x > 2)"); var list3 = ctx.Execute("Where(x => x > y).OrderBy(x => x).ToList()", new { y = 2 });Entity Framework
Bulk Operations
Expression Evaluator
Others
Need more info? info@zzzprojects.com
Contact our outstanding customer support for any request. We usually answer within the next business day, hour, or minutes!