文章編號: 316920 - 上次校閱: 2007年4月19日 - 版次: 3.2 PRB: 「 檢視狀態無效 」 錯誤訊息使用 Server.Transfer 時
在此頁中徵狀當您使用 [HttpServerUtility.Transfer (「 page
name",則為 True) 會收到下列錯誤訊息: 檢視狀態無效,此頁面,而且可能已損毀 發生的原因之所以發生這個問題,是因為 <pages>EnableViewStateMac 屬性 項目設為 true 時根據預設值。當這個屬性設為 true 時,ASP.NET 訊息驗證檢查 (MAC) 上執行的頁面檢視狀態從用戶端回傳頁面時。這項檢查會判斷用戶端上是否已修改頁面的檢視狀態。基於安全理由建議您保留這個屬性設定為 true。 當您呼叫 Server.Transfer 方法,而且設定第二個參數 ,則為 True 時,您可以保留 QueryString 和 表單 集合。其中一個表單欄位是保留網頁的檢視狀態隱藏的 __VIEWSTATE 表單欄位。檢視狀態訊息驗證檢查失敗,因為訊息驗證檢查只會檢查每一頁。因此,從呼叫 Server.Transfer 頁面檢視狀態是在 [目的地] 頁面上無效的。 檢視狀態是範圍的頁,而適用於只有該頁面。跨頁,應該不會傳送檢視狀態。 解決方案如果要解決這個問題,使用下列方法之一。 解決方式 1若要將您的伺服器控制項的值傳遞至其他頁面的頁面間傳輸值。如需詳細資訊請參閱下列 MSDN 文件:將伺服器控制項的值傳遞網頁間 這需要您建立您想要從 [目的地] 頁面存取的控制項的每個屬性的公用屬性。http://msdn2.microsoft.com/en-us/library/6c3yckfw(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/6c3yckfw(vs.71).aspx) 如果您有許多控制項,而且如果想從另一個頁面中存取這些控制項的屬性您也可以宣告為公用變數這些控制項。例如: Page1.aspx 解析度 2請勿將傳遞第二個參數 (也就是 false 根據預設值) 當您呼叫 Server.Transfer。例如:其他相關資訊重製行為的步驟
機器翻譯重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。 按一下這裡查看此文章的英文版本:316920?
(http://support.microsoft.com/kb/316920/en-us/
)
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。 | 其他資源 其他支援網站社群立即取得協助文章翻譯
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email



回此頁最上方
