Quelle serait la meilleure méthode pour sérialiser un dictionnaire pour l'utiliser dans un seul cookie?Sérialiser un dictionnaire pour les cookies?
Répondre
Je ne le recommande pas, les performances de sérialisation/désérialisation d'un cookie à chaque demande est terrible.
Trouvez une façon de représenter vous-même la structure vers/depuis une chaîne.
Si vous devez absolument sérialiser:
http://petesbloggerama.blogspot.com/2006/07/binary-serialization-to-from-string.html
Il existe des exemples de XML-serializable dictionaries qui fonctionneraient correctement pour les très petits objets du dictionnaire. Cependant, puisque la taille est une préoccupation avec les cookies, je recommanderais d'explorer quelque chose d'un peu moins flexible mais plus compact.
Avez-vous également envisagé de stocker les données sur le serveur et de stocker simplement une clé dans les données du cookie?
Je ne pense pas que Dictionary soit marqué [Serializable]. Si la clé et les valeurs sont les types primitifs (int, string, etc), vous pouvez utiliser une liste délimitée par des virgules/virgule:
key1, valeur1; key2, valeur2, key3, value3
Si vous avez des types complexes vos clés/valeurs, je recommanderais contre la sérialisation. Vous ne voulez pas faire face à des cookies 50K, vous ne savez jamais comment cela va fonctionner de navigateur à navigateur.
Le dictionnaire est marqué [Serializable] –
@Deviant IDictionary ne peut être que sérialisé binaire, ce qui n'est probablement pas ce que nous voulons ici. –
@Rex depuis quand les Interfaces peuvent-elles être sérialisées? Et si vous faites référence à Dictionary et non à IDictionary, je les sérialise en JSON tout le temps. Et si vous suivez le lien que j'ai fourni, Jon Skeet donne de l'aide avec Binary to string et back, ce qui est exactement ce que je proposais et faisais dans le passé avec succès Cette question ne pose pas de questions du tout, donc je ne comprends pas votre point. –
- 1. Sérialiser le dictionnaire Python en XML
- 2. Python "étendre" pour un dictionnaire
- 3. triez un dictionnaire par un autre dictionnaire
- 4. dupliquer les cookies vers un autre domaine
- 5. Comment sérialiser les propriétés jointes
- 6. cookies WebOb
- 7. PHP - Sérialiser les points flottants
- 8. Enregistrer les cookies pour les pages web distantes
- 9. Comment XML sérialiser un 'Type'
- 10. Comment sérialiser un message électronique?
- 11. Sérialisation .NET dictionnaire
- 12. Les cookies interdomaines avec FormsAuthentication
- 13. Vérifiez les cookies dans asp.net
- 14. Javascript effacer tous les cookies
- 15. Comment (xml) sérialiser un uri
- 16. Comment sérialiser un objet en C# et éviter les manipulations?
- 17. Liste un dictionnaire
- 18. HttpWebRequest POST et les cookies
- 19. Lire les cookies d'Internet Explorer
- 20. Test de cookies pour les passerelles de paiement
- 21. Lire l'URL pour enchaîner Java avec les cookies
- 22. Quelle est la raison pour laquelle les cookies réapparaissent mystérieusement?
- 23. Tri un objet dictionnaire
- 24. Règle pour gérer les caractères UTF-8 dans les cookies pour les applications CGI?
- 25. Si jquery POST à un fichier PHP, les cookies fonctionneront?
- 26. ASP.Net état de session pour les longues Auth Cookies
- 27. Comment sérialiser?
- 28. Sérialiser les objets Javascript internes (comme Range)
- 29. jquery enregistrer les positions des éléments (sérialiser?)
- 30. Comment sérialiser les collections Hibernate correctement?
Oui je l'ai, et j'entreposez seulement les clés en plus des données qui ne sont pas enregistrées dans la base de données, au moins au début. –