Hello Guillaume!
Sorry it took me a couple of days longer than I'd hoped to get back to you. As far as the library functionality is concerned, the feature is almost complete. What's missing is an adaption of SqlContextExpressionVisitor. Here, you need to apply the value context to the assignments, like it's done in VisitNewExpression. This takes care of Boolean-support etc, e.g. when evaluating a condition while doing the assignment. Please see also the feature issue in our Jira: https://www.re-motion.org/jira/browse/RM-3306 I've checked this with our tracked features and RM-3306 covers just the member-init within the outer select expression. There's also a subquery and a comparison aspect to the MemberInitExpression that are not part of your contribution, which is fine since we can isolate the scope nicely.
For code style, please change the NotImplementedException to a NotSupportedException. The difference here is that not-implemented only refers to features that lack implementation while not-supported is used when the specific functionality is not possible. Also, please use long variable names instead of abbreviations (e.g. with "expression" instead of "exp") outside of lambda expressions and spaces in front of parameterized method calls and casts. That way, the code uniformity remains preserved. Public and protected method calls require parameter checks, please add them. (Explicit test cases for run of the mill checks like not-null are not required).
Please refactor the check for supported bindings into a utility-method (and add a separate test for this) to prevent code duplication.
We also need unit tests for the adapted/new classes, structured in typical test-first approach, i.e. a test for the main path and each special case in the code.
I see that you've already found our integration tests :) One part of the C# and VB.NET integration tests contain the 101 Linq samples. I've added an explicit test for MemberInitExpressions with all the cases we need to support during MemberInit since we've not had a setup for those yet (r29118). What we also need are integration tests for lists (WithMemberInitExpression_AndCollectionValue_InOuterMostLevel) and nested init expressions (WithMemberInitExpression_AndNestedMemberInitExpressionValue_InOuterMostLevel).
Side note: We do have additional integration tests for the SQL backend within our O/R-mapper, but are thinking of moving them over to re-linq at some future time.
Last but not least, we need you to please fill out the Contributor Assignment Agreement (https://www.re-motion.org/web/?page_id=82) .
Thanks for contributing!
Best regards, Michael