2007年11月2日 星期五

ASP CODEPAGE

@CodePage 主要是作用在靜態字串,例如MyStr = "這是靜態字串"在IIS5.0及之前的版本@CodePage作用範圍為整個Session都有效也就是在某一頁使用了@CodePage,則其它頁也會受影響而IIS6.0已改為只作用在一個Response body(宣告的頁面及Include進來的頁面) 而Session.CodePage及Response.CodePage都是作用在動態字串例如:從資料庫中讀出的字串或用FSO讀進來的字串兩者的差異在其作用範圍Session.CodePage在整個Session都有效 而Response.CodePage則只作用於單一Response body當未宣告Response.CodePage時會依Session.CodePage的值作為Response.CodePage的設定若Session.CodePage也未設定則Response.CodePage會比照@CodePage的設定(但Session.CodePage不會比照@CodePage的設定,會直接捉Code Page Metabase的設定)若@CodePage也沒設定,則依Code Page Metabase中的設定為準若連Code Page Metabase中也沒設定,則會使用ANSI作為CodePage所以,看你頁面中是否使用了靜態或動態字串來設定相關的CodePage而Response.Charset要跟CodePage的設定相對應,才不會有亂碼產生 MSDN的相關說明http://msdn2.microsoft.com/en-us/library/ms524967.aspx

沒有留言: