Я использую FxCop, и он показывает предупреждение для "Не выставлять общий список", который предлагает использовать Collection<T>
вместо List<T>
. Причина, по которой это предпочтительнее, я знаю все это, как упоминалось в этом сообщении SO и MSDN и еще много статей, через которые я прошел.
Но мой вопрос в том, что у меня есть несколько методов, которые делают так много тяжелых вычислений, и методы принимают параметры List<T>
, которые должны быть более быстрыми и хорошими с точки зрения производительности. Но FxCop предупреждает об этом, а также. Таким образом, один из вариантов заключается в том, что я должен объявить параметр как Collection<T>
, а затем использовать ToList()
внутри метода, а затем использовать его.
Итак, какой из них оптимизирован?
"Подавить предупреждение для этого случая" ИЛИ "использовать Collection<T>
в параметре, а затем использовать ToList()
внутри самого метода".