2012-07-26 12 views
7

ASP.NET WebForms का उपयोग कर, मैं एक परियोजना की संरचना करने के दो तरीके हैं जिनसे देखें:ASP.NET वेबफ़ॉर्म परियोजना संरचना के लिए उत्तम आचरण

1) (फ़ाइलों के पीछे कोड सहित .aspx फ़ाइलों का एक बहुत कुछ है) और शायद कुछ .ascx फ़ाइलें (फ़ाइलों के पीछे कोड के साथ।

2), .cs फ़ाइलें (वर्ग फ़ाइलों) का एक बहुत पर निर्भर करते हैं और कक्षाओं Controls.Add() के साथ सब कुछ का निर्माण किया है आदि

पहले उपरोक्त विधि एएसपीएक्स और एसीएक्स फाइलों और बहुत कम .cs फ़ाइलों में परिणाम। उपरोक्त दूसरी विधि में बहुत सारी .cs फाइलें होती हैं, लेकिन बहुत कम एएसपीएक्स और एसीएक्स फाइलें होती हैं।

क्या परियोजना की संरचना के लिए "सर्वोत्तम अभ्यास" तरीका है? क्या माइक्रोसॉफ्ट इन तकनीकों में से एक की सिफारिश करता है? क्या कोई जानकारी है कि दो शैलियों में से कौन सा सामान्य रूप से उपयोग किया जाता है?

+0

बहुत राय प्रश्न, मुझे डर है कि यह बिल्कुल फिट नहीं है ... यहां कोई निश्चित उत्तर नहीं है, क्योंकि किसी प्रोजेक्ट की संरचना करने की कोई बात नहीं है ... कुछ दिशानिर्देश या सिफारिशें हो सकती हैं , लेकिन अंतिम निर्णय हमेशा आप पर है। जिस दृष्टिकोण से आप सबसे अधिक सहज महसूस करते हैं उसके साथ जाएं। मैं इसे स्टार्टर्स के लिए पढ़ने का सुझाव देता हूं - http://stackoverflow.com/faq – walther

+0

** http: //www.bredemeyer.com/why.htm** और ** http: //msdn.microsoft.com पर एक नज़र डालें/en-us/पुस्तकालय/ee658093 ** –

उत्तर

2

मैं पहले दृष्टिकोण के साथ रहूंगा। कुछ नियंत्रण प्रोजेमैटिक रूप से बनाए जाने के लिए बेहद कठिन (या मुश्किल) होते हैं।

उदाहरण के लिए GridView या ListView लें, एक ग्रिड व्यू के साथ * .aspx पृष्ठ बनाएं जिसमें टेम्पलेट कॉलम के साथ कस्टम टेम्पलेट्स हों। फिर अपना एप्लिकेशन चलाएं, एएसपी.नेट अस्थायी निर्देशिका में * .dll खोजें, कक्षा को डीकंपाइल करें और देखें कि कोड कितना गन्दा और जटिल है। समय के साथ इसे बनाए रखना और/या परिवर्तन करना बहुत मुश्किल होगा।

दूसरी ओर, कुछ घोषणात्मक कोड होने तक आप बुरा संतुलन बनाए रखने की कोशिश करते समय बुरा नहीं है।

3

यदि आपने ऐसा नहीं किया है, तो ASP.NET MVC देखें। यदि आप एमवीसी का चयन नहीं कर सकते हैं तो आप MVP pattern को एएसपी.नेट वेबफॉर्म के साथ कार्यान्वित कर सकते हैं। ये दो पैटर्न प्रेजेंटेशन, मॉडल और रूटिंग को अलग करने का अच्छा तरीका प्रदान करते हैं।

0

जितना संभव हो सके दृष्टिकोण का उपयोग करें और केवल दो तक पहुंचने का सहारा लें जब बॉक्स नियंत्रण से बाहर आपको आवश्यक कार्यक्षमता नहीं देता है - आप इस मामले में मौजूदा नियंत्रण से विरासत में एक कस्टम नियंत्रण बना सकते हैं। यह "या तो/या" परिदृश्य नहीं है - आपको न्यायसंगत दोनों दृष्टिकोणों का उपयोग करना चाहिए।

2

किसी भी दृष्टिकोण के साथ कुछ भी गलत नहीं है। आप जो भी उपयोग करते हैं वह व्यक्तिगत वरीयता, व्यवहार्यता और आवश्यकताओं पर निर्भर करता है।

एक समस्या जो आप सामना कर सकते हैं वह यह है कि कम डेवलपर आपकी परियोजना को चुनने में सक्षम होंगे और यदि आप दूसरे दृष्टिकोण का उपयोग करते हैं, तो इसके साथ गति प्राप्त करने में अधिक समय लगेगा। आपको बहुत अधिक डेवलपर्स मिलेंगे जो आसानी से पहला दृष्टिकोण उठा सकते हैं और जा सकते हैं।

संबंधित मुद्दे