Was macht dieses ReSharper-Snippet tatsächlich in eine Methodengruppe?

8

Code vor den Änderungen:

%Vor%

Code nach der Verbesserung:

%Vor%

Was macht das? Wird diese Zuordnung implizit für jedes Element in der brands -Auflistung ausgeführt?

    
Only Bolivian Here 24.08.2011, 20:55
quelle

2 Antworten

10

Da Sie den Parameter des Lambda-Ausdrucks direkt an die Methode Mapper.Map übergeben, entspricht dies genau der Angabe dieser Methode als Projektion für Select . Die Signatur von Mapper.Map ist mit dem Delegaten Func<TSource, TResult> kompatibel, daher schlägt R # vor, die Methodengruppe direkt anstelle eines Lambda-Ausdrucks zu verwenden.

    
Thomas Levesque 24.08.2011, 20:59
quelle
3

Die erste Zeile erstellt eine Methode, die sofort die Mapper.Map-Funktion aufruft. Dies ist nicht erforderlich, da die Mapper.Map-Methode mit der erwarteten Definition von Select übereinstimmt und Mapper.Map direkt aufrufen kann. Resharper ändert es so, dass nur eine Methode aufgerufen wird und die zusätzliche Methode nicht vom Compiler generiert wird.

    
NotDan 24.08.2011 21:00
quelle

Tags und Links