ในกระบวนการยกระดับเทคโนโลยียังมีบางคนที่ยึดติดกับสิ่งที่ล้าสมัย นอกจากนี้ยังมีบางคนที่เข้าสู่โลกใหม่ แต่ก็ยังไม่สามารถกำจัดนิสัยเก่า ๆ ได้ ฉันไม่ได้ใช้คำว่า "นิสัยไม่ดี" เพราะฉันรู้สึกรังเกียจกับคำนี้มาก
เทคโนโลยีใหม่ ๆ ควรมีแนวทางปฏิบัติด้านเทคโนโลยีใหม่ ๆ เมื่อเข้าสู่โลกของ ASP.NET คุณควรแก้ไขนิสัยในอดีตของคุณและเข้าสู่โลกใหม่
ต่อไปนี้เป็นแนวทางปฏิบัติที่ผิดทั้งหมด ส่งเสริมให้เป็นวิธีปฏิบัติที่แนะนำโดยไม่ได้ตั้งใจ:
1. ใช้ฝั่งเซิร์ฟเวอร์รวมเพื่อแนะนำองค์ประกอบของหน้าทั่วไปให้กับ ASPX
อ
ร์เฟซที่ควบคุมได้มากขึ้น และที่สำคัญกว่านั้น ASCX ก็คือคลาสจริง สามารถควบคุมได้อย่างสมบูรณ์
เว็บ.config
web.config มีอินเทอร์เฟซการจัดการการกำหนดค่าที่หลากหลายมาก มันเป็นส่วนหลักของแอปพลิเคชัน อย่างไรก็ตาม web.config ของผู้คนจำนวนมากมักจะว่างเปล่าหรือไม่เคยได้รับการแก้ไข
3. ใช้ Response.Write เพื่อส่งข้อความไปยังส่วนหน้า การตอบสนองภายใต้แพลตฟอร์ม ASP.NET นั้นแตกต่างจาก ASP Response มาก แม้ว่าจะหมายถึงความหมายเดียวกัน แต่การใช้งานก็แตกต่างกันมาก เนื้อหาของ Response.Write จะถูกส่งออกไปยังส่วนหน้าของเพจเท่านั้น ส่งออกข้อความไปยังส่วนหน้าคือ วิธีการใช้ PlaceHolder
4. ใช้ชุดของเซสชันเพื่อจัดการสถานะการเชื่อมต่อของผู้ใช้ วิธีการนี้ถูกใช้ในทางที่ผิดในสภาพแวดล้อม ASP.NET วิธีการที่ถูกต้องควรจะออกแบบ บันทึกข้อมูลในลักษณะที่มีโครงสร้าง มันจะมีประโยชน์สำหรับเซสชันหรือ Encapsulate การเข้าถึง
คุกกี้ คือการตรวจสอบแบบฟอร์มหรือการตรวจสอบ windows มีส่วนในการเริ่มต้นอย่างรวดเร็วที่อธิบายเรื่องนี้ได้ชัดเจนคนส่วนใหญ่ยังคงพึ่งพาการกำหนดค่าให้กับเซสชันเพื่อรักษาสถานะการรับรองความถูกต้องของผู้ใช้
6. ใช้ Response.Redirect เพื่อเปลี่ยนเส้นทางหน้า สิ่งนี้สามารถใช้ได้เมื่อจำเป็น แต่ไม่สามารถใช้ในทางที่ผิดได้ ข้อเท็จจริงได้พิสูจน์แล้วว่าการใช้การเปลี่ยนเส้นทางในทางที่ผิดจะนำไปสู่ความสับสนที่ร้ายแรง นี่คือสิ่งที่คุณทำเมื่อใช้เพจเป็นหน่วยโปรแกรม การใช้โหมดตัวควบคุมด้านหน้าจะรวมศูนย์ตรรกะการทำงานของผู้ใช้]
7. ใช้เพจ ASPX มากเกินไป หน่วยโปรแกรมในสภาพแวดล้อม ASP มีเพียงเพจ *.asp, ASP นี่ไม่ใช่กรณีของ .NET นอกจากนี้ยังมีไลบรารีคลาส back-end, ASCX ฯลฯ ตรรกะทางธุรกิจควรมีความเข้มข้น ในหน่วยที่แตกต่างกัน แทนที่จะใช้ ASPX หนึ่งรายการสำหรับการดำเนินการหนึ่งครั้ง บ่อยครั้ง ASPX จะถูกนำมาใช้เป็น ASCX หรือตัวควบคุมแบบกำหนดเอง
8. คัดลอกโค้ดระหว่างหลายหน่วยลอจิคัลและแก้ไขตรรกะที่เกี่ยวข้องเพื่อนำมาใช้ใหม่ หลักการสำหรับจัดการกับปัญหาดังกล่าว ไม่มีกระบวนการที่เหมือนกันหรือคล้ายกัน หากคุณใช้วิธีข้างต้น เมื่อเกิดการเปลี่ยนแปลงตรรกะที่สำคัญ หายนะ
9. กลัวการใช้ DataSet
หลายคนกลัวกับ DataSet พวกเขาคิดว่ามัน "แน่นอน" ส่งผลกระทบต่อประสิทธิภาพการทำงาน แต่พวกเขาไม่กล้าแม้แต่จะลองเป็นครั้งแรก มักใช้ ArrayList หรือออกแบบคลาสระดับต่ำ บันทึกข้อมูลการรวบรวมข้อมูล
10. ให้ความสำคัญกับ "ประสิทธิภาพ" มากเกินไป
ฉันไม่พอใจกับกลไกของ ASP.NET ViewState เป็นพิเศษ หรือฉันพยายามข่มเหงผู้อื่นอยู่เสมอ ในทางกลับกัน ฉันจะทำให้ตัวเองเหนื่อยมากหากฉันให้ความสำคัญกับการเชื่อมต่อกับฐานข้อมูลน้อยลง เมื่อต้องรับมือกับ ViewState
11. ไดเร็กทอรีรูทของแอปพลิเคชันวุ่นวายมาก
ASP.NET เป็นโครงการพัฒนา ไม่ใช่เว็บไซต์ ควรจัดประเภทและจัดทรัพยากรที่แตกต่างกัน ตัวอย่างเช่น ทรัพยากรแบบคงที่ทั้งหมด (สไตล์ชีต สคริปต์ รูปภาพ) ควรจัดระเบียบไว้ด้วยกัน คุณยังสามารถเขียนชุด API เพื่อจัดการทรัพยากรเหล่านั้นได้ . ASPX ควรจะถูกรวมเข้าด้วยกัน แล้ว .*.cs ล่ะ
? DataAccess Application Block คุณต้องเปิดและปิดการเชื่อมต่อด้วยตัวเอง เหตุใดจึงต้องกังวล 13.
สิ่งที่คุณเขียนน่าเชื่อถือที่สุด
ความจริงมักจะตรงกันข้าม ให้ความสำคัญกับการใช้ผลิตภัณฑ์ที่เขียนโดยผู้อื่นมากขึ้น ดังนั้น เหตุใดจึงต้องกังวลมากเกี่ยวกับ
การบันทึกชื่อไฟล์ ASPX เป็นสิ่งที่เจ็บปวดที่สุด ชื่อไม่เพียงแต่จะต้องระบุได้ง่ายเท่านั้น เพราะเบื้องหลัง ASPX ทุกตัวจะมีคลาสที่มีชื่อเดียวกัน ลองจินตนาการดูว่ามันจะอึดอัดแค่ไหน นอกจากนี้ คนส่วนใหญ่ไม่ทราบชื่อพื้นที่ของโครงการของตนเอง มันทำให้ผู้คนดูเหมือนกำลังดูบัญชีแยกประเภท
15. ไม่เคย แทนที่จะสืบทอดหรือสืบทอดคลาสบางอย่างที่มีพฤติกรรมเหมือนกัน พวกเขาควรจะได้มาจากคลาสพื้นฐานทั่วไป ในทางปฏิบัติ ASPX ของเราควรมีคลาสพื้นฐาน
PageBaseเนื่องจาก
มีคุณสมบัติสาธารณะบางอย่างที่จำเป็นต้องสรุปอยู่เสมอ
ASPX
) พวกเขาไม่เปิดเผยความลับใด ๆ จะต้องเป็นผลงานของทหารผ่านศึก JAVA
ไม่จำเป็นต้องพูดว่าเขายังไม่ได้เรียนรู้ ASP.NET เลย
18. ใช้ DreamWeaver เพื่อ "วาด" ASPX
คนกลุ่มนี้เป็นศิลปิน บางคนถึงกับมึนเมามากในการพูดคุยถึงวิธีการ "บูรณาการ" DreamWeaver และ Visual Studio ให้ดีขึ้น
19. หากคุณคุ้นเคยกับ System.Web.UI.WebControl และ System.Data.SqlClient เท่านั้น เป็นสิ่งที่ควรค่าแก่การทำความรู้จัก
20.Zero Annotations เหล่านี้คือผู้เล่นที่รวดเร็วซึ่งรู้ดีอยู่
แล้ว ใน Page_Load() เขียนขั้นตอน หรือดับเบิลคลิกที่ปุ่มเพื่อเขียนขั้นตอน xxx_Clock() ไม่สามารถมองเห็นได้ในโปรแกรม