อดีตนักออกแบบที่นี่หัน Dev และฉันเคยฉี่และครางเกี่ยวกับการควบคุมเว็บด้วย สุจริตมันถูกกว่ามากสำหรับนักออกแบบที่จะปรับการปฏิบัติของพวกเขากว่าสำหรับ. NET นักพัฒนาที่จะเจาะลึกการกำหนดเองของ GridView เพราะนักออกแบบยืนยันว่าแต่ละ TD มีแท็ก 'rel' (หรืออะไรก็ตาม)
Arseni Mourzenko ชี้ให้เห็นอย่างชาญฉลาดการตัดสินใจใช้ Webforms เป็นตัวเลือกของ บริษัท ที่ จำกัด การควบคุม HTML บางส่วนในขณะที่ให้ประสิทธิภาพในการเขียนโค้ด เว้นแต่ บริษัท ยินดีที่จะพิจารณาอีกครั้ง (ซึ่งพวกเขาไม่ควรทำเพื่อทำให้ผู้ออกแบบพอใจ) นักออกแบบจำเป็นต้องยอมรับความจริงนี้ นี่คือบางสิ่งที่พวกเขาสามารถทำได้:
1) หยุดขึ้นอยู่กับ ID คืออะไร ถึงแม้ว่าสิ่งนี้จะรู้สึกผิดในตอนแรก แต่ฉันก็พบว่าชีวิตนั้นง่ายขึ้นมากเมื่อฉันออกแบบทุกอย่างด้วยชั้นเรียน (และการสืบทอดแน่นอน) ก่อนอื่นมันทำให้น้ำหนักตัวเลือกของฉันเท่ากัน ในการสืบทอด CSS ID สำคัญกว่า CLASS มันดีจริง ๆ ที่มีทุกอย่างเป็นเด็กและ / หรือตัวเลือกชั้นเรียนและทำให้การหาลำดับความจำเพาะง่ายขึ้นเล็กน้อย สิ่งเดียวกันในเลเยอร์ JS มันทำให้ฉันมีความเจ็บปวดเป็นศูนย์เพื่อแลกเปลี่ยนตัวเลือกที่ใช้ ID ของฉันสำหรับคนที่ใช้คลาส
2) สอนพวกเขาว่า RadioButtonLists และ CheckboxLists แปลงเป็นอย่างไรพร้อมกับ Label = span, Panel = div และสิ่งอื่น ๆ ที่ไม่ชัดเจนเกี่ยวกับการควบคุมเป็น html วิธีที่. NET แสดงผลเหล่านี้ไปยัง HTML นั้นเป็นสิ่งที่แปลกกว่าที่ฉันคาดไว้เล็กน้อยและมันง่ายกว่ามากสำหรับฉันที่จะสร้างหน้าจอเมื่อฉันรู้ว่า HTML นั้นจะออกมาจากส่วนควบคุมเหล่านั้นอย่างไร
3) ให้พวกเขาทำนักออกแบบของพวกเขาใน ASPX โดยตรงไม่ใช่ HTML ดิบ ( ! สำคัญ ) สอนนักออกแบบเกี่ยวกับพื้นฐานของ GridViews, ListViews และอื่น ๆ ให้ตัวอย่างข้อมูลโค้ดแก่พวกเขาเพื่อผลักดันการเก็บรวบรวมวัตถุที่ไม่ระบุชื่อในการควบคุม Grid / ListView หากพวกเขาสามารถเรียนรู้ CSS ได้พวกเขาสามารถเรียนรู้วิธีคัดลอกวางรหัสนี้ได้พวกเขาสามารถใช้ VS Web Express เวอร์ชันฟรีซึ่งค่อนข้างดีที่ CSS & JS ทำงานได้ในขณะนี้ โปรเจ็กต์เว็บจำลองเหล่านี้จะให้โอกาสผู้ออกแบบในการป้อนตัวควบคุมบางส่วนจากนั้นดูแหล่งที่มาเพื่อดูว่าพวกเขามีการแสดงผลอย่างไร
4) อธิบายว่าแท็กรูปแบบที่ใช้ใน .NET ลืมเรื่องนี้ไปก่อนหน้านี้ แต่สิ่งที่นักออกแบบจะต้องคุ้นเคยก็คือปกติแล้วแท็กรูปแบบเดียวจะล้อมทั้งหน้า สิ่งนี้จะเปลี่ยนแปลงวิธีการควบคุมแบบฟอร์มและคุณไม่สามารถซ้อนแท็กแบบฟอร์มโดยไม่มีผลข้างเคียงแปลก ๆ ตรวจสอบให้แน่ใจว่านักออกแบบเข้าใจสิ่งนี้มิฉะนั้น HTML ในรูปแบบของพวกเขาจะเป็นฝันร้ายใน WebForms
5) อยู่ห่างจากธีมและสกิน แม้ว่า. NET Framework จะมีเครื่องมือเหล่านี้เพื่อช่วยในการควบคุมสไตล์ของแอพพลิเคชั่น แต่พวกมันดูแปลกและแปลกไปสำหรับนักออกแบบเว็บทั่วไปและฉันก็ไม่เคยพบพวกมันมาก่อนเลย ดูเหมือนว่าเป็นเครื่องมือที่ดีในการพัฒนาผู้ที่ไม่เชี่ยวชาญใน CSS แต่จะทำให้นักออกแบบชะลอตัวลงเท่านั้น ให้นักออกแบบทำงานในสภาพแวดล้อมตามธรรมชาติ (ไฟล์ html & css) และพวกเขาจะมีความสุขและมีประสิทธิผลมากขึ้น
6) ให้โครงการ "ต้นแบบ" ในการแก้ปัญหาเว็บไซต์ของคุณ เพื่อให้แน่ใจว่านักพัฒนามีเป้าหมายในการสร้างรหัสต่อต้านอยู่เสมอให้นักออกแบบสร้างโครงการเว็บปลอมในโซลูชันที่แท้จริงของคุณเพื่อให้เพจ ASPX เท่านั้นที่เก็บรักษาไว้และไม่ถูกแตะต้องโดยนักพัฒนาจริง ซึ่งหมายความว่าผู้ออกแบบสามารถมองย้อนกลับไปที่ต้นแบบในโซลูชันเดียวกับโครงการจริงเพื่อตรวจสอบว่านักพัฒนาทำอย่างไรและผู้พัฒนาสามารถเรียกใช้ต้นแบบในเวลาใดก็ได้เพื่อให้แน่ใจว่างานของพวกเขาตรงกับเจตนาของนักออกแบบ
ในที่สุดต่อต้านการร้องเรียนใด ๆ ที่จะแปลงเป็น MVC เว้นแต่คุณจะพร้อมฝึกอบรม Devs ของคุณอีกครั้ง ฉันรัก MVC เป็นการส่วนตัว แต่ถ้าคุณมีทีมที่มีความรู้มากมายใน WebForms อย่าไปโยนทิ้งไปโดยไม่มีเหตุผล หากแอปพลิเคชันของคุณกำลังมีปัญหา ViewState ปัญหา SEO หรือปัญหาการเข้าถึงได้ง่ายให้ MVC ดูเป็นเรื่องยาก แต่มันจะใช้เวลามากขึ้นในการฝึกอบรม WebForms devs บน MVC มากกว่าที่จะฝึกอบรมนักออกแบบวิธีการใช้การควบคุมเว็บ
ในตอนท้ายของวันไม่มีการออกแบบฉันมาข้ามที่ฉันไม่สามารถทำงานใน WebForms แม้ว่าฉันจะสาบานที่มืดมน GridView หนึ่งชั่วโมงก่อนที่จะคิดออก
มีเครื่องมือหรือแอพพลิเคชั่นใดบ้างเพื่อให้นักออกแบบสามารถแสดงผล (หน้า html) ของหน้า. aspx ได้หรือไม่?
ลืมการแสดงออก (ฉันไม่เคยชอบมัน) รับ Visual Studio เวอร์ชันฟรี (Web Developer Express) มันสามารถเชื่อมต่อกับโซลูชันการควบคุมแหล่งข้อมูลใด ๆ ที่คุณมีและมันจะช่วยให้นักออกแบบเรียกใช้เพจ ASPX และดู HTML ที่แสดงผลในเบราว์เซอร์ การใช้เครื่องมือ CSS และ JS นั้นดีกว่าที่เคยเป็นมาและมีเครื่องมือที่ยอดเยี่ยมมากมายที่นำเสนอในขอบเขตเช่น Web Essentials การแปลงกฎ CSS ด้วยการคลิกเพียงครั้งเดียวให้เป็นความเบี่ยงเบนเฉพาะของผู้ขายตัวเลือกสีและจานสีทั้งหมดในอินเตอร์เฟส VS คลิกเดียวการฝังรูปภาพลงในไฟล์ css 'การแปลง CSS' น้อย '(คุณสามารถ' โค๊ด 'ใน CSS) F12 'นำทางไปยัง' บน JavaScript รวมถึงการใช้งานจริงอย่างแท้จริงและอีกมากมาย มันเป็นขุมสมบัติสำหรับนักออกแบบตอนนี้ FYI