Служебная нагрузка не имеет отношения к переключению, маршалингу и т. Д., Если только ... ваших данных еще нет в базе данных.
Тем не менее, я склонен делать почти не хранимые процедуры настолько, насколько это возможно с T-SQL - завернутые в ORM.
Действительно, это ответ на этот вопрос. Изучите Entity Framework, NHibernate, Linq To SQL и т. Д. Прекратите писать хранимые процессы (теперь я могу услышать отрицательные голоса) и сделайте это с C #.
РЕДАКТИРОВАТЬ: Добавлено больше информации
Хранимые процедуры трудно тестировать (они привязаны к данным), они не дают преимуществ по скорости по сравнению с динамическим SQL и на самом деле не являются более безопасными. Тем не менее, для таких вещей, как сортировка и фильтрация, реляционная база данных более эффективна, чем C #.
Но, если вам нужно использовать хранимые процедуры (и есть времена), используйте TSQL в максимально возможной степени. Если у вас есть существенное количество логики, которую нужно выполнить, которая не установлена на основе, тогда используйте C #.
Один раз, когда я сделал это, я добавил дополнительную обработку данных в мою базу данных. Компания, в которой я работал, использовала 5-4-4 фискальных календаря на неделю. Это было почти невозможно сделать в SQL. Поэтому я использовал C # для этого.