Quelle est la différence entre la réflexion normale et la réflexion qui peut être fait avec des expressions lambda comme celle-ci (forme prise build your own MVVM):réflexion sur la base d'expression lambda vs réflexion normale
public void NotifyOfPropertyChange<TProperty>(Expression<Func<TProperty>> property)
{
var lambda = (LambdaExpression)property;
MemberExpression memberExpression;
if (lambda.Body is UnaryExpression)
{
var unaryExpression = (UnaryExpression)lambda.Body;
memberExpression = (MemberExpression)unaryExpression.Operand;
}
else memberExpression = (MemberExpression)lambda.Body;
NotifyOfPropertyChange(memberExpression.Member.Name);
}
est le reflet à base de lambda utilisant simplement les API de réflexion normales en interne? Ou est-ce quelque chose de significativement différent. Quelle est la différence de performance?
Y at-il une bonne série d'articles qui peuvent me guider à travers tout cela? – bitbonk
Cet article pourrait vous aider (http://www.infoq.com/articles/expression-compiler). –
Belle réponse .... – nawfal