ความแตกต่างที่สำคัญ: ASP ย่อมาจาก Active Server Pages เป็นที่รู้จักกันทั่วไปว่าเป็น Classic ASP หรือ ASP Classic เป็นสภาพแวดล้อมการเขียนสคริปต์ฝั่งเซิร์ฟเวอร์ที่พัฒนาและเผยแพร่โดย Microsoft ASP.NET เป็นกรอบงานแอปพลิเคชันบนเว็บเซิร์ฟเวอร์ ASPX ย่อมาจาก Active Server Pages Extended มันถูกออกแบบมาสำหรับการพัฒนาเว็บเพื่อผลิตเว็บเพจแบบไดนามิก ทั้งสองสนับสนุนบริบทของเซสชัน วัตถุเซสชันเก็บข้อมูลเกี่ยวกับหรือเปลี่ยนการตั้งค่าสำหรับเซสชันผู้ใช้ โดยพื้นฐานแล้วมันจะบันทึกทุกสิ่งที่ผู้ใช้เห็นและทำบนหน้าโดยเฉพาะอย่างยิ่งการเปลี่ยนแปลงใด ๆ ที่ผู้ใช้อาจรวมเข้ากับหน้า
ส่วนใหญ่จะใช้ ASP เพื่อสร้างและเรียกใช้แอปพลิเคชันเว็บเซิร์ฟเวอร์แบบไดนามิกและโต้ตอบ นอกจากนี้ยังอนุญาตให้หนึ่งรวมหน้า HTML คำสั่งสคริปต์และคอมโพเนนต์ COM เพื่อสร้างเว็บเพจแบบโต้ตอบและโปรแกรมประยุกต์บนเว็บที่มีประสิทธิภาพ นอกจากนี้ยังทำให้การพัฒนาและแก้ไขแอปพลิเคชันบนเว็บดังกล่าวง่ายขึ้น
หลังจากรีลีสดั้งเดิมมันมีการรีลีสสองเวอร์ชัน ASP 2.0 แนะนำวัตถุในตัวหกตัวซึ่งเป็นของจริงซึ่ง ได้แก่ Application, ASPError, Request, Response, Server และ Session ASP 3.0 แนะนำการปรับปรุงเพิ่มเติมบางอย่างเช่นวิธี Server.Transfer วิธี Server.Execute และวัตถุ ASPError ขั้นสูง นอกจากนี้ ASP 3.0 ยังเปิดใช้งานการบัฟเฟอร์โดยค่าเริ่มต้นและปรับแต่งเครื่องยนต์เพื่อประสิทธิภาพที่ดีขึ้น อย่างไรก็ตาม ณ เดือนพฤษภาคม 2556 ยังไม่มีการอัพเกรดเป็น ASP
ASP.NET สร้างขึ้นบน Common Language Runtime (CLR) สิ่งนี้ทำให้โปรแกรมเมอร์สามารถเขียนโค้ด ASP.NET โดยใช้ภาษา NET ที่รองรับ หน้าเว็บ ASP.NET เป็นที่รู้จักกันทั่วไปว่าเป็นเว็บฟอร์ม พวกเขามีมาร์กอัปแบบคงที่ (X) HTML นอกจากนี้ยังมีมาร์กอัปที่กำหนดการควบคุมเว็บและการควบคุมผู้ใช้ นี่คือที่นักพัฒนาวางเนื้อหา rc ทั้งหมดสำหรับหน้าเว็บ
ใน ASP.NET Framework 2.0 มีการนำเสนอโมเดล behind รหัสใหม่ สิ่งนี้อนุญาตให้ข้อความแบบสแตติกอยู่ในหน้า. aspx ในขณะที่โค้ดแบบไดนามิกยังคงอยู่ในไฟล์. aspx.vb หรือ. aspx.cs หรือ. aspx.fs ตำแหน่งของรหัสแบบไดนามิกขึ้นอยู่กับภาษาการเขียนโปรแกรมที่ใช้
ทั้งสองสนับสนุนบริบทของเซสชัน วัตถุเซสชันเก็บข้อมูลเกี่ยวกับหรือเปลี่ยนการตั้งค่าสำหรับเซสชันผู้ใช้ โดยพื้นฐานแล้วมันจะบันทึกทุกสิ่งที่ผู้ใช้เห็นและทำบนหน้าโดยเฉพาะอย่างยิ่งการเปลี่ยนแปลงใด ๆ ที่ผู้ใช้อาจรวมเข้ากับหน้า สิ่งนี้มีข้อได้เปรียบเช่นในกรณีที่ระบบล่มระหว่างการเปลี่ยนแปลงที่ผู้ใช้พยายามทำการเปลี่ยนแปลงจะไม่สูญหายเมื่อระบบขัดข้อง เซสชั่นจะเก็บความทรงจำของที่ผู้ใช้ค้างไว้
เซสชั่นเป็นหลักคุกกี้หน้าเว็บ มันจัดเก็บและดึงค่าสำหรับผู้ใช้ในขณะที่ผู้ใช้นำทางหน้าเว็บ ตัวแปรที่เก็บไว้ในวัตถุเซสชันเก็บข้อมูลเกี่ยวกับผู้ใช้คนเดียวและสามารถใช้ได้กับทุกหน้าในแอปพลิเคชันเดียว ข้อมูลทั่วไปบางอย่างที่เก็บไว้ในตัวแปรเซสชันคือชื่อรหัสและค่ากำหนด เซิร์ฟเวอร์สร้างวัตถุเซสชันใหม่สำหรับผู้ใช้ใหม่แต่ละรายและทำลายวัตถุเซสชันเมื่อเซสชันหมดอายุ
ความแตกต่างบางประการระหว่างเซสชัน ASP และ ASP.NET เซสชัน:
- ใน ASP เซสชั่นขึ้นอยู่กับกระบวนการในขณะที่ใน ASP.NET เซสชั่นเป็นกระบวนการอิสระ
- ใน ASP เซสชันนั้นขึ้นอยู่กับคุกกี้ในขณะที่ใน ASP.NET นั้นเซสชันนั้นขึ้นอยู่กับคุกกี้
- สถานะเซสชัน ASP ไม่มีวิธีการแก้ปัญหาโดยธรรมชาติในการทำงานกับ Web Farms เซสชัน ASP.NET สามารถเก็บไว้ในเซิร์ฟเวอร์ของรัฐและเซิร์ฟเวอร์ SQL ซึ่งสามารถรองรับเซิร์ฟเวอร์ได้หลายเครื่อง
- ASP เซสชันจะทำงานเมื่อเบราว์เซอร์รองรับคุกกี้เท่านั้นเซสชัน ASP.NET จะทำงานโดยไม่คำนึงถึง
- สถานะเซสชัน ASP นั้นขึ้นอยู่กับกระบวนการ IIS เป็นอย่างมาก ถ้า IIS รีสตาร์ทตัวแปรเซสชัน ASP ก็จะถูกนำไปรีไซเคิลเช่นกัน ในขณะที่เซสชัน ASP.NET สามารถเป็นอิสระจากสภาพแวดล้อมการโฮสต์ดังนั้นเซสชัน ASP.NET สามารถรักษาแม้ว่า IIS จะรีบูต
- เซสชัน ASP เผชิญข้อ จำกัด ฟาร์มเซิร์ฟเวอร์ เมื่อผู้ใช้ย้ายจากเซิร์ฟเวอร์หนึ่งไปอีกเซิร์ฟเวอร์หนึ่งในเซิร์ฟเวอร์ฟาร์มของเว็บสถานะเซสชันของพวกเขาจะไม่ติดตามพวกเขา สถานะเซสชัน ASP.NET มีการสนับสนุนการกำหนดค่าเซิร์ฟเวอร์ฟาร์ม มันย้ายไปยังรูปแบบที่ไม่ได้ดำเนินการดังนั้นจึงไม่ประสบปัญหาเซิร์ฟเวอร์ฟาร์ม