Нет, нет большой разницы между отправкой списка одного объекта и одного объекта.То, о чем вы думаете, это микрооптимизация.Я уверен, что в коде есть несколько других мест, где вы можете ускорить свое приложение, помимо работы над отправкой объекта против списка объектов.
Вот почему.Подумайте, что нужно для сериализации списка.Список на самом деле является не чем иным, как массивом, состоящим из нескольких объектов одного типа.Конечно, есть небольшая дополнительная работа, которую система должна сказать: «Эй, это список», а не только один объект, но это невероятно незначительно.Вы можете проверить это сами.Сумма невероятно мала.
Теперь вам нужно подумать о том, что вы делаете.Сериализация не проблема.Это в коде.Вы можете написать код для быстрой обработки одного объекта, но он может обрабатывать один и тот же код, скажем, 1000, 10000 и т. Д. Когда вы разрешаете передавать список и не устанавливаете верхний предел (скажем, выбрасывает исключение, не идеально,но это работает), вы открываете возможность того, что кто-то может передать действительно большой объем данных.Это где тайм-ауты в коде начинают иметь проблемы.Вы никогда не можете предположить, что кто-то передаст, скажем, список из 10 объектов, поэтому возникает вопрос: «Вы должны сделать его асинхронным?»Это намного больше работы, чтобы понять это правильно.Таким образом, вы должны спросить себя, стоит ли создавать второй метод для обработки больших объемов данных?Сериализация данных в .Net действительно очень хорошая.Да, существуют нестандартные решения, которые могут сделать это быстрее, но во многих случаях это меньше всего беспокоит вас.