คุณต้องการไฟล์. ascx เมื่อใดและจะใช้อย่างไร


88

เมื่อสร้างเว็บไซต์ควรใช้ไฟล์. ascx เมื่อใด . ascx คืออะไรและใช้ทำอะไร? ตัวอย่างจะช่วยได้มากขอบคุณ!

คำตอบ:


98

เป็นส่วนขยายสำหรับUser Controls ที่คุณมีในโครงการ

การควบคุมผู้ใช้คือการควบคุมคอมโพสิตชนิดหนึ่งที่ทำงานเหมือนกับเว็บเพจ ASP.NET คุณสามารถเพิ่มการควบคุมและมาร์กอัปของเว็บเซิร์ฟเวอร์ที่มีอยู่ให้กับการควบคุมผู้ใช้และกำหนดคุณสมบัติและวิธีการสำหรับตัวควบคุม จากนั้นคุณสามารถฝังไว้ในเว็บเพจ ASP.NET ซึ่งทำหน้าที่เป็นหน่วย

หากคุณต้องการมีฟังก์ชันบางอย่างที่จะใช้กับหลาย ๆ เพจในโปรเจ็กต์ของคุณคุณควรสร้าง User control หรือ Composite control และใช้ในเพจของคุณ เพียงแค่ช่วยให้คุณสามารถใช้งานฟังก์ชันและรหัสเดียวกันได้ในที่เดียว และทำให้สามารถนำกลับมาใช้ใหม่ได้


12

โดยพื้นฐานแล้วเราใช้การควบคุมของผู้ใช้เมื่อเราต้องใช้ฟังก์ชันที่คล้ายกันในตำแหน่งต่างๆของแอป เช่นเดียวกับที่เราใช้หน้าต้นแบบเพื่อรูปลักษณ์ที่สอดคล้องกันของแอปในทำนองเดียวกันเพื่อหลีกเลี่ยงการใช้ฟังก์ชันและ UI เดียวกันซ้ำ ๆ ทั่วทั้งแอปเราใช้การควบคุมผู้ใช้ ฉันอาจจะใช้งานได้มากกว่านี้ แต่ฉันรู้เรื่องนี้เท่านั้น ...

ตัวอย่างเช่นสมมติว่าไซต์ของคุณมีผู้ใช้ 4 ระดับและสำหรับผู้ใช้แต่ละคนจะมีเพจที่แตกต่างกันภายใต้ไดเรกทอรีที่แตกต่างกันซึ่งมีกลไกการเข้าถึงที่แตกต่างกัน สมมติว่าคุณกำลังขอข้อมูลที่อยู่สำหรับผู้ใช้ทั้งหมดจากนั้นสร้างช่องที่อยู่เช่น Street, City, State, Zip และอื่น ๆ ในแต่ละหน้า นั่นจะเป็นงานที่ซ้ำซาก แต่คุณสามารถสร้างเป็นไฟล์ ascx (ส่วนขยายสำหรับการควบคุมผู้ใช้) และในการควบคุมนี้จะใส่ UI และรหัสธุรกิจที่จำเป็นสำหรับการเพิ่ม / อัปเดต / ลบ / เลือกบทบาทที่อยู่อย่างชาญฉลาดจากนั้นเพียงแค่อ้างอิงหน้าที่ต้องการทั้งหมด

ดังนั้นการควบคุมผู้ใช้ทางความคิดเราสามารถหลีกเลี่ยงการสร้างรหัสซ้ำสำหรับแต่ละบทบาทและการสร้าง UI สำหรับแต่ละบทบาท


9

ไฟล์ Ascx เรียกว่าUser Controlsและมีไว้สำหรับการใช้ซ้ำและเพื่อทำให้ aspx-pages ซับซ้อนน้อยลง (ยกบางส่วนของหน้าออก) นอกจากนี้ยังอาจเป็นประโยชน์สำหรับสิ่งที่เรียกว่าการแคชโดนัทนั่นคือเมื่อคุณต้องการแคชส่วนหนึ่งของหน้า


3

หากคุณมีบล็อกโค้ด + html ที่ปรากฏในหลายหน้าและไม่ได้จัดเรียงจากหน้านั้น (เช่นบล็อกของรายการข่าวล่าสุด) คุณสามารถคัดลอก / วางโค้ดลงในทุกหน้าได้

อย่างไรก็ตามจะเป็นการดีกว่าที่จะใส่รหัสนั้นไว้ในบล็อกของตัวเองและรวมบล็อกนั้นไว้ในทุกหน้าที่ต้องการ "บล็อก" นั้นเป็นไฟล์ ascx


1

ไฟล์ ASCX เป็นเฟรมเวิร์กเว็บแอปพลิเคชันฝั่งเซิร์ฟเวอร์ที่ออกแบบมาสำหรับการพัฒนาเว็บเพื่อสร้างเว็บเพจแบบไดนามิก พวกเขาชอบรหัส DLL แต่คุณสามารถใช้ได้มีTAGSคุณสามารถเขียนครั้งเดียวและใช้ในที่ใดก็ได้ในหน้า ASP ของคุณหากคุณมีไฟล์ ชื่อ "Controll.ascx" จากนั้นรหัสจะตั้งชื่อว่า "Controll.ascx.cs" คุณสามารถฝังไว้ในหน้า ASP เพื่อใช้:


1

อีกหนึ่งการใช้ไฟล์. ascx คือสามารถใช้สำหรับการแคชเพจบางส่วนในเพจ ASP.NET สิ่งที่เราต้องทำคือสร้างไฟล์ ascx จากนั้นย้ายส่วนควบคุมหรือส่วนของหน้าที่เราต้องการแคชลงในคอนโทรลนั้น จากนั้นเพิ่มคำสั่ง @OutputCache ในตัวควบคุม ascx และจะถูกแคชแยกต่างหากจากเพจหลัก ใช้เมื่อคุณไม่ต้องการแคชทั้งหน้า แต่จะใช้เฉพาะบางส่วนของหน้าเท่านั้น


-2

เมื่อคุณกำลังสร้างเว็บไซต์ asp.net พื้นฐานโดยใช้ webcontrols เป็นความคิดที่ดีเมื่อคุณต้องการให้สามารถใช้การควบคุมของคุณได้มากกว่าหนึ่งตำแหน่งในเว็บไซต์ของคุณ การแยกโค้ดออกจากไฟล์ layout ascx จะถือตัวควบคุมที่ใช้แสดงเค้าโครงไฟล์ cs ที่เป็นของไฟล์ ascx จะถือโค้ดที่เติมคอนโทรลเหล่านั้นไว้

หากต้องการความเข้าใจพื้นฐานเกี่ยวกับการควบคุมผู้ใช้คุณสามารถลองใช้เว็บไซต์นี้


1
ไม่ด้วยโมเดล codebehind คุณจะได้ไฟล์ aspx หรือ ascx บวกกับ aspx.cs หรือ ascx.cs (หรือ aspx.vb และ ascx.vb) คุณสามารถมีไซต์ที่มีเฉพาะเพจ aspx (และ aspx.cs) โดยไม่มี ascx ใด ๆ
Hans Ke st ในวันที่

2
ดูเหมือนว่าเขาสับสนกับ cx และ cs
Shekhar_Pro
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.