Je stocke un tableau d'une classe sérialisable personnalisée en session sur mon site. Quand une page du site change, elle devient soudainement invalide et m'indique qu'elle ne peut pas convertir le type en son propre type. Je suppose que les numéros de version de la classe changent ou quelque chose ?!La modification de page ASP.NET provoque un tableau d'objets dans Session pour être impossible de convertir son propre type?
J'apprécierais d'éviter les réponses «Ne pas utiliser la session», à moins que ce ne soit une solution vraiment simple. Je n'essaie pas de refaçonner tout ce processus.
Unable to cast object of type 'ShipmentPackages[]' to type 'ShipmentPackages[]'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidCastException: Unable to cast object of type 'ShipmentPackages[]' to type 'ShipmentPackages[]'.
Source Error:
Line 21: Else
Line 22: If Not Session("ShipmentList") Is Nothing Then
Line 23: ShipmentList = DirectCast(Session("ShipmentList"), ShipmentPackages()).ToList
Line 24: End If
Line 25: End If
Avez-vous par hasard plus d'un espace de noms ici? Peut-être un client de service Web et un assembly référencé avec les mêmes noms de type? –
non, ce code fonctionne bien entre les modifications apportées à cette page. une fois qu'une modification est faite, c'est quand ce qui est en session ne correspond plus ... quand asp.net recompile la page, la classe est-elle rendue comme une nouvelle version ou quelque chose? Je pense que même ainsi, ce serait convertible/castable. – TheSoftwareJedi