Кэширование результата Linq для повторного использования MVC 3 - PullRequest
0 голосов
/ 21 марта 2012

Я пытаюсь узнать, как повторно использовать мой результат Linqtotwitter для повторного использования в моем приложении.Все работает хорошо, за исключением того, что я собираюсь очень быстро поразить ограничение скорости, если я не использую форму кэширования.У меня есть 3 запроса в моем приложении, которые попадают в фид Твиттер.

Я пытался использовать шаблон репозитория на http://ardalis.com/introducing-the-cachedrepository-pattern, но у меня над головой, и позвольте мне просто сказать, что я не ушел далеко.

Пример контроллера из моего кода

    [HttpGet] 
    public ActionResult PublicShouts()    
    {

        var twitterCtx = new TwitterContext(Auth);





        List<TweetViewModel> friendstweets = (from tweet in twitterCtx.Status
                                              where tweet.Type == StatusType.User &&                                         
                                                tweet.ScreenName == "BattleShouts" &&
                                        //       tweet.InReplyToScreenName == "Battleshouts" &&
                                              tweet.IncludeEntities == true &&
                                              tweet.IncludeRetweets == true &&
                                            tweet.IncludeContributorDetails == true &&
                                               tweet.CreatedAt < DateTime.Now.AddDays(-30).Date
                                              select new TweetViewModel
                                              {

                                                  ImageUrl = tweet.User.ProfileImageUrl,
                                                  ScreenName = tweet.User.Identifier.ScreenName,
                                                  Tweet = tweet.Text
                                              })
 .ToList();

 return PartialView(friendstweets);

Я также посмотрел этот пост Как кэшировать данные в приложении MVC

Как я могу пойтио кэшировании моих результатов для последующего повторного использования, чтобы я не достиг предела твиттера?

Спасибо

1 Ответ

0 голосов
/ 21 марта 2012

Как насчет OutputCacheAttribute?

http://msdn.microsoft.com/en-us/library/system.web.mvc.outputcacheattribute.aspx

Посмотрите на VaryByCustom отдельная запись кэша для каждого пользователя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...