Если объектная модель SP слишком медленная для этой цели, единственным вариантом будет запрос к базе данных SP напрямую ... однако это не поддерживается MS (операции CRUD), и будущие обновления или пакеты обновления могут нарушить ваш код / запрос. Прочитайте здесь для получения дополнительной информации.
То, что вы пытаетесь заархивировать, довольно уникально, так что вам, вероятно, придется придумать запрос самостоятельно ... Схема базы данных довольно сложная, но здесь - хороший обзор для семейств сайтов / сайты.
А что именно вы имеете в виду под «неэффективным»? Как долго выполняется код / есть ли у вас тайм-ауты? В каком контексте (веб, консоль, приемник событий и т. Д.) Он работает?
Может быть, вы могли бы опубликовать код здесь, чтобы мы могли посмотреть и сделать его достаточно эффективным (если это возможно).