Korriger: "lengden på strengen overskrider verdien som er angitt i egenskapen maxJsonLength" feilmelding når du åpner en 3,5-tommers ASP.NET web-formular


Symptomer


Tenk deg følgende:

  • Du har et ASP.NET-webprogram som bruker Microsoft.NET Framework 3.5.
  • Programmet har en side som bruker UpdatePanel -kontrollen.
  • Du har tilgang til ASP.NET-webskjemaet, og UpdatePanel -kontrollen forsøker å postere tilbake data som er mer enn 2,5 megabyte (MB).
ASP.NET-webskjema vises ikke i dette scenariet. I tillegg får du en feilmelding i webleseren som ligner på følgende:
Feil: Sys.WebForms.PageRequestManagerServerErrorException: feil under serialisering eller deserialisering ved hjelp av JSON-JavaScriptSerializer. Lengden på strengen overskrider verdien som er angitt i egenskapen maxJsonLength.
Obs! Dette problemet oppstår selv om du setter egenskapen maxJsonLength til en stor verdi i Web.config-filen.

Årsak


Dette problemet oppstår på grunn av en begrensning i utforming i filen System.web.extensions.dll. Mer spesifikt angir konstruktøren JavaScriptSerializer grensen til den maksimale verdien for egenskapen maxJsonLength . Noen ganger er maksimal verdi ikke stor nok. Dette forårsaker problemet som er beskrevet i delen "Symptomer".

Oppløsning


Informasjon om hurtigreparasjon

En støttet hurtigreparasjon er nå tilgjengelig fra Microsoft. Det er imidlertid ment å løse problemet som beskrives i denne artikkelen. Bruk den bare på systemer som har dette bestemte problemet.

Hvis du vil løse dette problemet, kontakter du Microsoft Kundestøtte for å få hurtigreparasjonen. For en fullstendig liste over telefonnumre for Microsofts kundestøttetjenester og informasjon om støttekostnader, kan du gå til følgende Microsoft-webområde:Obs! I spesielle tilfeller kan avgifter som vanligvis påløper for oppringinger til kundestøtte avbrutt hvis en Microsoft-tekniker avgjør at en bestemt oppdatering løser problemet. Vanlige kundestøttekostnader gjelder for ytterligere kundestøttespørsmål og problemer som ikke dekkes av den gjeldende oppdateringen.

Forutsetninger

Hvis du vil bruke denne hurtigreparasjonen, må du ha .NET Framework 3.5 SP1 installert på en datamaskin som kjører ett av følgende operativsystemer:
  • Windows XP
  • Windows Server 2003
  • Windows Vista
  • Windows Server 2008

Krav om omstart

Du må kanskje starte datamaskinen på nytt etter at du har installert denne hurtigreparasjonen, hvis noen av de berørte filene som brukes når du har installert hurtigreparasjonen. For å unngå å starte datamaskinen på nytt, Avslutt et ASP.NET-webområde før du installerer hurtigreparasjonen.

Informasjon om erstatning av hurtigreparasjoner


Denne hurtigreparasjonen erstatter ikke andre hurtigreparasjoner.

Filinformasjon

Den engelskspråklige versjonen av denne hurtigreparasjonen har filattributtene (eller senere filattributter) som er oppført i følgende tabell. Datoene og klokkeslettene for disse filene er oppført i Coordinated Universal Time (UTC). Når du viser filinformasjonen, konverteres den til lokal tid. Hvis du vil finne forskjellen mellom UTC og lokal tid, kan du bruke kategorien tidssone under dato og klokkeslett i Kontrollpanel.
For alle støttede x86-baserte versjoner av .NET Framework 3.5
FilnavnFilversjonFilstørrelseDatoTidPlattform
System.web.extensions.dll3.5.30729.45591,277,95224-Jun-201008:47x86
For alle støttede x64-baserte versjoner av .NET Framework 3.5
FilnavnFilversjonFilstørrelseDatoTidPlattform
System.web.extensions.dll3.5.30729.45591,277,95224-Jun-201013:25x64
For alle støttede IA-64-baserte versjoner av .NET Framework 3.5
FilnavnFilversjonFilstørrelseDatoTidPlattform
System.web.extensions.dll3.5.30729.45591,277,95224-Jun-201017:34IA-64

Instruksjoner etter installasjon

Når du har installert hurtigreparasjonen, legge til følgende element i Web.config-filen, og deretter angi en større verdi for maksimal lengde for skriptet.
<appSettings><add key=”aspnet:UpdatePanelMaxScriptLength” value=”
<value>” /></appSettings>

Du kan omgå dette problemet ved å bruke kommandoen Gacutil.exe for å installere interop-samling i den globale samlingsbufferen.

Status


Microsoft har bekreftet at dette er et problem i Microsoft-produktene som er oppført i delen "Gjelder for".

Referanser


Hvis du vil ha mer informasjon om UpdatePanel-kontrollen, kan du gå til følgende webområde for Microsoft Developer Network (MSDN):Hvis du vil ha mer informasjon om jsonSerialization-elementet, kan du gå til følgende MSDN-webområde: