Bu kodu vardı:Resharper neden bir kod değişikliği öneriyor ve sonra değişiklik hakkında şikayet ediyor?
return children.SelectMany(c => GetChildControls<TControl>(c)).Concat(children);
... ve Resharper Ben buna değiştirmek önerdi:
return children.SelectMany(GetChildControls<TControl>).Concat(children);
bağlamda:
internal static IEnumerable<TControl> GetChildControls<TControl>(this Control control) where TControl : Control
{
var children = control.Controls != null ? control.Controls.OfType<TControl>() : Enumerable.Empty<TControl>();
return children.SelectMany(GetChildControls<TControl>).Concat(children);
}
farkı, muhtemelen gördüğümüz gibi satırın "geliştirilmiş" versiyonunun eklenmiş "(c)"
Ama şimdi şüpheli olarak, "Olası çoklu numaralandırma IEnumerable" diyerek işaretler.
Evet, doğru, birden fazla olabilir/olmalı, ama neden bu konu hakkında? Onu önceki durumuna geri döndürmeli miyim?
Tahminimce, Resharper'ın her satır için bir kerede önereceği kod değişikliklerinin sayısını sınırlaması vardır. "Mümkün çoklu numaralandırma" sorunu, kodun her iki sürümünde mevcuttur, ancak Resharper yalnızca "iyileştirme" yapıldığında ve mesajın kaybolduğunda görüntülenir. –