ASP.NET MVC CookieTempDataProvider.DeserializeTempData возвращает ноль - PullRequest
4 голосов
/ 25 августа 2009

Я пытался использовать CookieTempDataProvider для передачи основного сообщения между публикацией (обновление сущности) и получением (список сущностей) с помощью метода RedirectToAction. При использовании реализации TempData по умолчанию это работает нормально, однако, когда я использую версию на основе файлов cookie из проекта MVC Futures, словарь TempData после перенаправления становится пустым. Это связано с тем, что TempDataDictionary возвращается как нулевой из метода DeserializeTempData. Я точно знаю, в какой строке кода возникает проблема, и я знаю, как ее исправить, но я не могу поверить, что я единственный, у кого есть эта проблема.

Возможно, я использую неправильную версию проекта MVC Futures, но я только что скачал ASP.NET MVC v1.0 source , и проблема определенно существует. Кто-нибудь еще использует CookieTempDataProvider, и он работает для вас?

Проблема с классом CookieTempDataProvider, на мой взгляд, заключается в строке 62, где он преобразует десериализованный объект как TempDataDictionary, а не как IDictionary . Когда я делаю это изменение, все работает отлично.

Кто-нибудь еще видит эту проблему, или это только у меня?

1 Ответ

3 голосов
/ 23 февраля 2010

То же самое здесь. Не работал после использования сборки, как это было с MVC Futures. Изменение строки 62, как вы предложили, решило проблему. Спасибо за публикацию.

...