Решение Cache для Dapper при использовании хранимых процедур (MSSQL)
====================================================================

 Я использую **Dapper в** основном для вызова **хранимых процедур** в базе данных **MSSQL 2008 R2. У** меня нет классов, которые сопоставляются с таблицами базы данных. Большая часть данных заканчивается в `IEnumerable <Dynamic>` и передается в сетку на экране. 

 Есть ли готовое к использованию решение для буферизации данных, которое я мог бы использовать? (Мне нужно использовать его на MVC). 

 Данные в базе данных являются как статическими, так и динамическими по своей природе. Я использую модель репозитория для доступа к данным. 

 Dapper не включает встроенные функции кэширования *данных* (хотя он использует обширное кэширование для уровня метапрограммирования): он нацелен непосредственно на материал ADO.NET - однако вы можете использовать практически любое готовое кэширование компонент, включая кеш времени выполнения HTTP ( `HttpContext.Current.Cache` ) или новые реализации `ObjectCache` т. д. Поскольку они просто берут объекты, они должны работать нормально. 

 Если вы используете *распределенный* кеш (возможно, через app-fabric, redis или memcached), вам понадобятся данные для сериализации. В этом случае я настоятельно рекомендую использовать формальные типы POCO для привязки, а не `dynamic` API. В качестве примера мы используем dapper для заполнения POCO, которые аннотируются маркерами protobuf-net для сериализации, и сохраняются через BookSleeve для redis. Что звучит более сложно, чем на самом деле.