[ https://issues.apache.org/jira/browse/IGNITE-18120?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17709707#comment-17709707 ]
Pavel Tupitsyn commented on IGNITE-18120: ----------------------------------------- Looks good. Merged to main: 54781ef08e6b66fefaca13259fc888daef5ffe8f > .NET: Thin 3.0: Allow arbitrary MemberInit projections in LINQ > -------------------------------------------------------------- > > Key: IGNITE-18120 > URL: https://issues.apache.org/jira/browse/IGNITE-18120 > Project: Ignite > Issue Type: Improvement > Components: platforms > Reporter: Pavel Tupitsyn > Assignee: Sergey Stronchinskiy > Priority: Major > Labels: .NET, LINQ, ignite-3 > Time Spent: 1h 40m > Remaining Estimate: 0h > > Ignite LINQ provider allows anonymous type projections: > {code} > query.Select(emp => new {Id = emp.Key, Name = emp.Value.Name}); > {code} > However, it does not work with a custom class: > {code} > query.Select(emp => new Foo {Id = emp.Key, Name = emp.Value.Name}); > {code} > throws exception: > {code} > System.NotSupportedException : The expression 'new Foo() {Id = [x].Key}' > (type: System.Linq.Expressions.MemberInitExpression) is not supported. > {code} > Add VisitMemberInit overload to CacheQueryExpressionVisitor to support this > scenario. See linked SO page for more details - there is a proposed fix as > well. -- This message was sent by Atlassian Jira (v8.20.10#820010)