2017-10-19 4 views
0

J'ai un dictionnaire déclaré dans le domaine tels que:Comment puis-je lire la valeur d'un ViewState dans une variable?

Dictionary<String, string[]> operationDetails = new Dictionary<string, string[]> { }; 

Certaines opérations sont effectuées et le dictionnaire est stocké de nouveau dans un ViewState comme ceci:

ViewState.Add("operationDetails", operationDetails); 

Je veux maintenant lire variable et stocker de nouveau dans operationDetails:

operationDetails = ViewState["operationDetails"]; 

Cependant, cela me revient avec l'erreur de ne peut pas convertir objet dictionnaire. J'ai essayé Convert.ToDictionary mais une telle déclaration n'existe pas. Comment puis-je lire cet état d'affichage dans une variable?

Répondre

2

Vous avez jeter le ViewState revenir à sa DataType originale

operationDetails = ViewState["operationDetails"] as Dictionary<String, string[]>; 
0

C'est la raison pour laquelle il est suggéré d'utiliser ViewBag au lieu de ViewState il vous sauver de la re-conversion dans la vue

set in c# as ViewBag.operationDetails = operationDetails; 
get in razor as operationDetails =ViewBag.operationDetails