Frage

Ich habe eine ASP.NET 3.5 App und versuchen, ein Update-Panel zu aktualisieren, die eine verschachtelte individuelle Kontrolle hat. In diesem benutzerdefinierten Steuerelement ist ein ComponentArt Gird, die von fast 13 MB von Daten gefüllt wird (Ja, ich könnte das chunck ...) zu diesem Update aus.

Ich habe eine versteckte Schaltfläche wihtin den Update-Panel, das ich von JS von Client-Seite auslösen, wenn ich brauche das Updatepanel und das Gitter.

Wenn ich die Update-Methode während des asyncPostback mit Updatepanelxyz.Update () aufrufen, dann bekomme ich später im Prozess ein asyncPostBackError sagen, dass die JSonSerializer nicht diese Menge an Daten hanlde kann. Ich soll den angegebenen Wert erhöhen.

der Tat. Verstanden. Aber wenn ich diesen Wert in der web.config ändern, dann ist es nur bis Runde über 8MB arbeiten, aber nicht mehr. Gibt es eine Grenze für die JSonSerializer in diesem Fall. Ich habe den Wert auf den Maximalwert von Int32 gesetzt, die Art des 1000x des Standardwerts, der für 4MB serialisierten Daten bereits genug ist.

Irgendwelche Vorschläge? Jede Art und Weise der Serializer zu zwingen, das zu erreichen? Jede Art und Weise eines anderen Serializer zu benutzen?

Cheers, Steve

War es hilfreich?

Lösung

Am besten ist es, die ScriptingJsonSerializationSection.MaxJsonLength Property in Ihrem web.config Abschnitt zu ändern.

Der Standardwert ist 102.400 Zeichen, im Gegensatz zu der JsonSerializer Klasse Grenze von 2.097.152 Zeichen.

Siehe auch:

jsonSerialization Konfigurationsabschnitt max Länge Eigenschaft

Wie ich bereits erwähnt, ändert die Konfiguration Abschnitt Eigenschaft ist der einzige Weg, leider zu gehen.

Andere Tipps

Geck, 1 MB Daten ist zu viel - warum zum Teufel brauchen Sie 13

Ich denke, was Sie wirklich brauchen Ihre ui Refactoring. Ist mir egal, wie schnell Ihr Netzwerk ist, dass nur verrückte Sachen ist!

Ich bin damit einverstanden absolut die UI und Data Access Schicht benötigen eine refactor, aber für ein kurzfristiges war ich gerade auf der Suche für eine einfache und schnelle Lösung meines Klienten zu helfen, bis zum nächsten Update der Software herauskommt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top