У нас была такая же проблема не так давно, и после долгих поисков следующий код решил эту проблему:
protected override object LoadPageStateFromPersistenceMedium()
{
string viewState = Request.Form["__VSTATE"];
LosFormatter formatter = new LosFormatter();
return formatter.Deserialize(viewState);
}
protected override void SavePageStateToPersistenceMedium(object viewState)
{
LosFormatter formatter = new LosFormatter();
System.IO.StringWriter writer = new System.IO.StringWriter();
formatter.Serialize(writer, viewState);
string viewStateString = writer.ToString();
ClientScript.RegisterHiddenField("__VSTATE", viewStateString);
}
Мы поместили ее в представление в тегах скрипта, что не оченьКрасиво, но работает ...
Подробнее см .: Странное необработанное исключение из приложения asp.net - Ошибка проверки MAC-адреса viewstate и http://www.codeproject.com/KB/viewstate/ViewStateCompression.aspx