好的,這個話題在互聯網上並不是新鮮事,我明白了。但我還沒有找到解決方案來解決我的問題。視圖狀態MAC驗證失敗,每天失敗50次
問題是我一直在我的網站上捕捉到這個異常。也許每天50次左右。 (請參閱下面的堆棧跟蹤)
驗證視圖狀態MAC失敗。如果此應用程序由Web Farm或羣集託管,請確保配置指定相同的驗證密鑰和驗證算法。 AutoGenerate不能在羣集中使用。
我已經在我的web.config文件中預定義了一個machinekey - 根本沒有任何幫助。 然後我讀了一些地方,我可能是一個緩慢的加載造成的錯誤,但我記錄頁面加載時間,並且當這個錯誤發生時,theres沒有什麼驚人的。 一些ppl建議禁用視圖狀態解密,但是作爲很多其他ppl寫入,這不是一個真正的解決方案。
任何人都知道該怎麼辦?
堆棧跟蹤:
at System.Web.UI.ViewStateException.ThrowError(Exception inner, String persistedState, String errorPageMessage, Boolean macValidationError)
at System.Web.UI.ViewStateException.ThrowMacValidationError(Exception inner, String persistedState)
at System.Web.UI.ObjectStateFormatter.Deserialize(String inputString)
at System.Web.UI.ObjectStateFormatter.System.Web.UI.IStateFormatter.Deserialize(String serializedState)
at System.Web.UI.Util.DeserializeWithAssert(IStateFormatter formatter, String serializedState)
at System.Web.UI.HiddenFieldPageStatePersister.Load()
at System.Web.UI.Page.LoadPageStateFromPersistenceMedium()
at System.Web.UI.Page.LoadAllState()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest()
at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at ASP.default_aspx.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
您是否在Web場或羣集中運行?有多臺服務器? – Tejo
您是否試圖捕獲失敗的視圖狀態並查看其中的內容? – toxaq
我剛剛在我的本地主機上調試時第一次出錯,不知道爲什麼想到,但至少我可以說我的本地主機不在網絡農場。我試圖捕捉不到,但生病了! –