ฉันเคยใช้ HttpModule เพื่อเปลี่ยนคุกกี้ก่อนการตอบกลับ วันนี้ฉันพบว่า Asp.net กำลังริเริ่มและแปลงอักขระภาษาจีน ꪻ ซึ่งฉันทำงานอย่างหนักเพื่อแปลงเป็นอักขระภาษาจีน ไม่ต้องพูดถึงตัวควบคุมเว็บของ Asp.net Ranat=server จะถูกแปลงเป็นตัวอักษรจีนเพื่อส่งออก
หากคุณเขียนเนื้อหาของหน้าทีละบรรทัดโดยใช้ Response มันจะเหนื่อยเกินไปและเกิดข้อผิดพลาดได้ง่าย ดังนั้นวิธีที่ดีที่สุดคือทำการแปลงอีกครั้งหลังจากการสร้างของ Asp.net เสร็จสิ้น เพื่อให้ Asp.net ไม่เกี่ยวข้องกับคุณ
การดำเนินการรุ่นทั้งหมดของ Asp.net เสร็จสมบูรณ์ในวิธี Render ดังนั้นเราจะดำเนินการกับวิธี Render:
ป้องกันแทนที่เป็นโมฆะ Render (ผู้เขียน HtmlTextWriter)
-
StringWriter sw = StringWriter ใหม่ ();
HtmlTextWriter htmlw = HtmlTextWriter ใหม่(sw);
//นำเนื้อหาที่สร้างขึ้นของเพจออก
ฐาน Render(htmlw);
htmlw.ฟลัช();
htmlw.ปิด();
สตริง pageContent = sw.ToString();
//แก้ไขเนื้อหา
pageContent = KillTheBugAndShit (เนื้อหาเพจ
Response.Write (เนื้อหาเพจ);
//base.Render (ผู้เขียน);
-
เมื่อใช้วิธีการนี้ คุณยังสามารถนำเนื้อหาที่สร้างโดยเพจออกและสร้างเพจแบบคงที่เพื่อใช้งานได้อีกด้วย
(ผมว่าผมเคยเขียนกระทู้ที่มีเนื้อหานี้ไว้เมื่อปีที่แล้ว...ผมจำไม่ได้ครับ)