2015-08-03 4 views
0

Я работаю над небольшим проектным ядром, которое родилось более года назад.Срок действия истечения срока действия ServiceStack

Должен разрешить скользящее окончание, и я хотел знать, был ли он теперь поддержан готовым к использованию в SS.

Знаете ли вы, есть ли способ добавить скользящее окончание без необходимости отмечать все POCO атрибутом?

+0

Этот код сообщается в ссылке был создан по вашей спецификации, как в ответе http://stackoverflow.com/questions/14857921/how-to-advance-the-session-timeout-in-servicestack Кстати, вопрос был не об этом коде, а о реализации сползания срока действия. – Pizzaboy

ответ

1

Фильтры в ServiceStack's Request Pipeline поддерживают те же подписи, где все, что можно сделать в Request or Response Filter Attribute, также может быть выполнено в Global Request or Response Filter.

sliding Sessions example, который использует фильтр [SlideExpiration] Response Attribute, например:

public class SlideExpirationAttribute : ResponseFilterAttribute 
{ 
    ... 
    public override void Execute(
     IHttpRequest req, IHttpResponse res, object requestDto) 
    { 
     var session = req.GetSession(); 
     if (session != null) req.SaveSession(session, this.Expiry); 
    } 
} 

ли просто повторно спасая таким образом он получает повторно сохраненный с новой сессии истечения, это может вместо того, чтобы быть сделано в глобальной Отклик фильтра с :

GlobalResponseFilters.Add((req, res, dto) => 
{ 
    var session = req.GetSession(); 
    if (session != null) 
     req.SaveSession(session); 
});