1

NodeType Extension および CanReduce = false でカスタム式継承を使用して、SQL の生成をカスタマイズすることは可能ですか?

Name が ViewModel のプロパティであり、Attribute1 が MS SQL の SQL 型の列の属性である次の要点を検討してください。

/* may not compile, focus is on SQL generation. */
Expression<Func<ViewModel, bool>> expr = (vm) => vm.Name == "abc" && vm.Attribute1 == 123;
var translator = new CustomExpressionVisitor();
LambdaExpression translated = (LambdaExpression)translator.Visit(expr);

/*
translated has a custom Expression type for vm.Attribute1 == 123 part, it is of type XmlPredicateExpression and this expression has all necessary information to generate an SQL query on this column.
*/

この式の SQL を生成するように EntityFramework に教えるにはどうすればよいでしょうか? 出来ますか?

4

0 に答える 0