29 Ekim 2013 Salı

The client disconnected.

Geliştirdiğimiz Web uygulamalarında exception logging yapıyorsak “System.Web.HttpException: The client disconnected. —> System.Web.UI.ViewStateException: Invalid viewstate” hatası ile mutlaka karşılaşmışsınızdır. Bu sorunun birçok nedeni olabilmektedir. Bu nedenler farm’da çalışan web uygulamaları için machine key’in aynı olmaması, sunucu üzerinde çalışan antivirüs veya firewall yazılımları, veya client’ın veri gönderirken proxy’de Viewstate hidden field’ının uzun olmasından dolayı kırpılması olabilmektedir. İlk iki sebep için kod tarafında bir düzeltme yapılması mümkün gözükmezken son sebebi web.config dosyasında System.Web nodunda bulunan pages nesnesi içine  maxPageStateFieldLength=”512″ yazarak çözebilirsiniz. Yaptığınız bu değişiklik Viewstate hidden field’ının 512′şer karakter içeren birden fazla alana bölünmesini sağlayacaktır. Bu çözümle Invalid Viewstate hatalarının birçoğundan kurtuldum.

http://www.tameroz.com/en/invalid-viewstate-exception/