我認爲我已經嘗試了所有針對此問題的標準回答,並且我知道我已經閱讀了數百個關於此問題的問題和帖子,但沒有他們似乎已經解決了這個問題,或者說明了我的情況下的原因。 (我5小時下來,沒有接近:-()視圖狀態驗證在網絡農場中失敗 - 常見嫌疑人被淘汰
我有2個服務器網絡農場。
我已經設置machine.config中機鍵和確認鍵兩臺機器
加密:SHA1,解密:AES - 這是默認設置,它可以幫助改變他們
我已經驗證,在鏈中沒有任何其他配置文件(web.cfg,APPHOST等)有一個這些值的設置。
我添加了一個頁面到吐機器鍵值背出現場(based on this SO),並證實它們是相同的跨越請求機器和匹配是機器的.config
值
服務器端會話狀態位於共享狀態服務器中,我已驗證sessionid對2個服務器的請求之間保持不變。
我已驗證頁面已完全加載,__EVENTVALIDATION隱藏字段在啓動帖子之前已呈現到頁面中。該視圖狀態的大小是不是太糟糕,在7.64kb
當頁面從請求呈現給服務器1,然後回傳到服務器2,我得到的可怕...
Error Message:
Unable to validate data.
at System.Web.Configuration.MachineKeySection.GetDecodedData(Byte[] buf, Byte[] modifier, Int32 start, Int32 length, Int32& dataLength)
at System.Web.UI.ObjectStateFormatter.Deserialize(String inputString) HttpApplication.RecordError => HttpApplication.RaiseOnError => global_asax.Application_Error
這篇文章是由一個標準的,純粹的asp鏈接按鈕觸發的,頁面上沒有ajax。
任何和所有的幫助將不勝感激。
設置enableViewStateMAC =虛假不:-)