Я использую функцию сеанса ServiceStack (в это с помощью кэширования памяти), и я пытаюсь получить доступ к ключу в объекте сеанса, изменить его, а затем сохранить сессию:ServiceStack Кэширование/Session блокировки
var filesList = Session.Get<List<string>>("NewRequestUploadedFiles");
filesList.Add(fileName);
Session["NewRequestUploadedFiles"] = filesList;
Это код можно вызывать параллельно через несколько одновременных запросов от клиента, поэтому требуется блокировка этого ключа. Есть ли какой-либо встроенный способ добиться блокировки на ISession?
На данный момент я использую кеширование памяти, но в будущем я хотел бы изменить поставщика кеширования на Redis, поэтому, если есть какой-то общий способ, это предпочтительнее.
Заранее спасибо.
Возможно, вы захотите использовать встроенную блокировку. См. Http://stackoverflow.com/a/8096551/215502 – kampsj