我一直在嘗試使用CookieTempDataProvider使用RedirectToAction方法在post(實體更新)和get(實體列表)之間傳遞基本消息。當使用默認的TempData實現時,這很好,但是當我使用MVC Futures項目中的基於cookie的版本時,TempData字典在重定向之後爲空。這是因爲TempDataDictionary從DeserializeTempData方法返回爲null。我確切地知道問題出現在哪一行,我知道如何解決這個問題,但我不相信我是唯一有這個問題的人。ASP.NET MVC CookieTempDataProvider.DeserializeTempData返回null
也許我使用的是MVC Futures項目的錯誤版本,但我剛剛下載了ASP.NET MVC v1.0 source,問題肯定存在那裏。是否有其他人使用CookieTempDataProvider,併爲它工作?
與CookieTempDataProvider類的問題,我看到它,是在線路62上,在那裏它被鑄造反序列化對象作爲TempDataDictionary而不是作爲IDictionary的<串,對象>。當我做出這個改變時,一切都很完美。
其他人看到這個問題,還是隻是我?
關於此更新:當我運行MVC單元測試時,它們都通過了,但是當我在我的應用程序中使用該類時,反序列化工作正常,但它不會將結果對象視爲TempDataDictionary。 – jimr 2009-08-26 06:04:59
進一步更新:當運行單元測試時,傳遞給ITempDataProvider.SaveTempData方法的對象是一個TempDataDictionary,並將其作爲序列化。但是,在運行MVC應用程序時,傳遞到ITempDataProvider.SaveTempDatadata方法的對象是IDictionary,並被序列化爲Dictionary 。 –
jimr
2009-08-27 01:46:23
對於任何有興趣的人來說,這個bug現在已經在MVC 3中修復了。 – jimr 2011-08-15 08:17:18