Qual è la differenza tra ViewData e PageData in asp.net MVC 3?

Bene, vedo queste 2 proprietà ma non riesco a capire la differenza tra loro?
Non riesco a trovare alcun aiuto ovunque sulla proprietà di PageData.
così può aiutare qualsiasi corpo?

@ { Viewdata["something"] = 1; PageData["something"] = 2; } 

Grazie

PageData è una proprietà di WebPages su cui è basato Razor

[it] Fornisce accesso in serie ai dati delle pagine condivisi tra pagine, pagine di layout e pagine parziali.

http://msdn.microsoft.com/en-us/library/system.web.webpages.webpagebase.pagedata(v=VS.99).aspx

ViewData è una proprietà di ViewPage e fornisce un metodo per il trasferimento di dati tra un controller e una pagina.

Ottiene o imposta un dizionario che contiene dati da passare tra il controller e la vista.

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

ViewData è accessibile tramite il controller, PageData no.

Non sono sicuro al 100%, ma sembra che PageData sia qualcosa di WebMatrix (l’ambiente di sviluppo web “leggero” di MS). E ViewData è qualcosa che è pienamente supportato in MVC. ViewData si trova nello spazio dei nomi System.Web.Mvc e pertanto qualsiasi app MVC lo renderà disponibile.

PageData è apparentemente (secondo MSDN) nello spazio dei nomi System.Web.WebPages, ma non riesco ad accedere a PageData dai miei controller MVC, anche se lo qualifico completamente. Forse non è pensato per l’accesso dal lato del controller, come ViewData può essere …?

Ci sono altre informazioni su PageData in questa altra domanda StackOverflow qui , ma le informazioni su di esso in tutto il web sono sorprendentemente scarse (come probabilmente avete trovato).

Spero che aiuti!

Viewdata è una proprietà della proprietà viewpage ed entrambi sono nella class viewpage ….