0
Dynamic.cs를 확장하여 인덱서 사용에 적합하게합니다. 이 시나리오에서는 호출 식에 저장된 인덱스를 가져와야합니다. 디버거, 나는 볼 수linq 호출에 저장된 값을 얻는 방법 Expression
- left {Param_0.get_Item(0)} System.Linq.Expressions.Expression {System.Linq.Expressions.InstanceMethodCallExpressionN}
- Arguments Count = 1 System.Collections.ObjectModel.ReadOnlyCollection<System.Linq.Expressions.Expression> {System.Runtime.CompilerServices.TrueReadOnlyCollection<System.Linq.Expressions.Expression>}
- [0] {0} System.Linq.Expressions.Expression {System.Linq.Expressions.ConstantExpression}
CanReduce false bool
DebugView "0" string
NodeType Constant System.Linq.Expressions.ExpressionType
+ Type {Name = "Int32" FullName = "System.Int32"} System.Type {System.RuntimeType}
Value 0 object {int}
+ Rohdatenansicht
내가 원하는입니다 :
left.Arguments[0].Value
이걸 어떻게 얻을 수?
추한 방법은 아마도 left.ToString()을 사용하는 것입니다. 결과는 다음과 같습니다. "Param_0.get_Item (0)"여기서 get_Item() 매개 변수를 추출 할 수 있습니다. 그러나 이것이 올바른 방법이 아니라고 생각합니다.
입니까? – svick
@svick Google을 알고 계십니까?). 그렇지 않다면 [link] (http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library. aspx) – Schorsch