Existe-t-il un moyen en C# de référencer un constructeur de classe en tant que fonction standard? La raison en est que Visual Studio se plaint de modifier les fonctions avec lambdas, et souvent c'est une simple instruction select. Par exemple var ItemColors = selectedColors.Select (x => new SolidColorBrush(x));
, où selectedColors est simplement IEnumerable<System.Windows.Media.Color>
.Appel du constructeur en tant que fonction dans C#
Techniquement, le lambda ne devrait-il pas être redondant? select prend une fonction acceptant un type T et retournant le type U. Le pinceau de couleur unie prend (le correct) le type T ici et renvoie un U. Seulement je ne vois pas de moyen de le faire en C#. En F # ce serait quelque chose comme let ItemColors = map selectedColors (new SolidColorBrush)
.
TL; DR: Je suppose que je cherche la forme valide de var ItemColors = selectedColors.select (new SolidColorBrush)
qui n'a pas besoin d'un lamba. Est-ce possible en C# ou est-ce que le langage n'a aucun moyen d'exprimer cette construction?
Il essaie de créer une instance de délégué d'un cteur normal. – SLaks