Код: Выделить всё
Delegate GenerateFunction(T current, IList parents) {
var currentExpr = Expression.Parameter(typeof(T), "current");
var parentsExpr = Expression.Parameter(parents.getType(), "parents");
var parameters = new List
();
//...
return Expression
.Lambda(
Expression.Block(new List { parentsExpr, currentExpr }, ...),
parameters.ToArray())
.Compile();
}
Кажется, все компилируется, и мое выражение выглядит нормально, но когда я его запускаю, оно появляется ( хотя я не могу быть уверен), чтобы получить исключения нулевых ссылок при доступе к переменной родительского кода (внутри выражения/замыкания).
Я не могу найти ни одного поднятого (?) локальные переменные внутри метода, поэтому мне интересно, фиксируются ли они вообще?
Подробнее здесь: https://stackoverflow.com/questions/145 ... expression