Je suis à jour certains de l'ancien code, et ont relevé plusieurs cas où le même objet est jeté à plusieurs reprises chaque fois que l'une de ses propriétés ou des méthodes doit être appelé. Exemple:
if (recDate != null && recDate > ((System.Windows.Forms.DateTimePicker)ctrl).MinDate)
{
((System.Windows.Forms.DateTimePicker)ctrl).CustomFormat = "MM/dd/yyyy";
((System.Windows.Forms.DateTimePicker)ctrl).Value = recDate;
}
else
{
(System.Windows.Forms.DateTimePicker)ctrl).CustomFormat = " ";
}
((System.Windows.Forms.DateTimePicker)ctrl).Format = DateTimePickerFormat.Custom;
Mon envie est de fixer cette monstruosité, mais étant donné mon peu de temps, je ne voulez pas vous embêter avec tout ce qui n'affectent pas la fonctionnalité ou à la performance.
Donc ce que je me pose est, est-il redondant jette arriver optimisé par le compilateur? J'ai essayé de trouver moi-même en utilisant ildasm sur un exemple simplifié, mais n'étant pas familier avec IL je ne fini plus confus.
Mise à JOUR
Jusqu'à présent, le consensus semble être que non, ces distributions ne sont pas optimisé, mais b)alors qu'il y a peut-être quelques petites performances en conséquence, il n'est probablement pas significative, et c)que je devrais envisager de fixation de toute façon. Je suis descendu sur le côté de la résolution de corriger un jour, si j'ai le temps. Pendant ce temps, je ne vais pas vous en soucier.
Merci à tous!