Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 16577|Svare: 1

[ASP.NET] Sesjonstilstander kan ikke serialiseres. I "StateServer" eller "SQLServer"-modus...

[Kopier lenke]
Publisert på 18.11.2017 21:37:45 | | | |
Sesjonstilstander kan ikke serialiseres. I "StateServer"- eller "SQLServer"-modus vil ASP.NET serialisere sesjonstilstandsobjekter, så ikke-serialiserbare objekter eller MarshalByRef-objekter er ikke tillatt. De samme begrensningene gjelder hvis den tilpassede sesjonsstatusbutikken utfører lignende serialisering i "Custom"-modus.        



Løsning:

Variabler kan ikke serialiseres når du tildeler en Session, så prøv å legge til [Serializable] i Klassen. Problemløsning

[Serialiserbar]
offentlig klasse MyClass
{
.......
}

La oss snakke om [Serializable], som brukes for å informere kompilatoren om at klassen kan serialiseres

Serialisering refererer til prosessen med å lagre tilstanden til en objektinstans til et lagringsmedium. I denne prosessen konverteres de offentlige og private feltene til objektet og navnet på klassen (inkludert samlingen der klassen befinner seg) til en bytestrøm før bytestrømmen skrives til datastrømmen. Når objektet deretter deserialiseres, opprettes en identisk kopi av det opprinnelige objektet.
Når man implementerer serialiseringsmekanismer i et objektorientert miljø, må det være noen avveininger mellom brukervennlighet og fleksibilitet. Så lenge du har nok kontroll over denne prosessen, kan du gjøre det stort sett automatisk. For eksempel er enkel binær serialisering ikke tilstrekkelig, eller det er behov for å finne ut hvilke felt i en klasse som må serialiseres av en spesifikk grunn. De følgende seksjonene vil utforske de pålitelige serialiseringsmekanismene som tilbys av .NET-rammeverket og fremheve noen av de viktige funksjonene som lar deg tilpasse serialiseringsprosessen til dine behov.





Foregående:ASP.NET StateServer som lagrer sesjonen
Neste:sqlserver hvordan kopiere én tabell til en annen
 Vert| Publisert på 19.11.2017 16:19:48 |
For noen objekter som arver fra MarshalByRef, som DbTransation-objekter, kan de ikke serialiseres. Derfor kan du ikke bruke Session til å lagre objekter som arver MarshalByRef-typen.
Løsningen er å bruke Cache og SessionID for å emulere Sessionen. Cache-klassen kan cache alle typer objekter.
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com