2009-11-25 18 views
5

मैं पागल हो सकता हूं, लेकिन मास्टर पेज मुझे डराते हैं क्योंकि मुझे डर है कि एक बार जब मैं एक मास्टर पेज का उपयोग करने में बंद हो जाता हूं, तो मुझे एक ऐसी स्थिति का सामना करना पड़ेगा जहां मैं मास्टर पेज की दृश्य सामग्री का केवल 9 0% भाग लेना चाहता हूं मुझे विरासत तोड़ने और इस प्रकार मास्टर में मौजूद सामग्री को पुन: पेश करने और इसे बच्चे में लाने के लिए।क्या मास्टर पेज जाने का रास्ता हैं?

मुझे लगता है कि यह किसी भी तरह की "विरासत" में एक समस्या है जिसमें आपको सावधान रहना होगा, लेकिन ऐसा लगता है कि कम से कम आप नियमित कक्षा में विधियों को ओवरराइड कर सकते हैं।

मैं शायद यहां बहुत सुसंगत नहीं हूं, लेकिन उपयोगकर्ता नियंत्रण आपको अधिक लचीलापन देता है। केवल एक ही ड्रॉ बैक है कि आपको उन्हें वेबफॉर्म पर खींचना होगा। उस के लिए, मैं बड़ा सौदा कहता हूं।

मास्टर पेज पर उपयोगकर्ता नियंत्रण का उपयोग करने से मेरा ऐप कनवर्ट करना मुझे डरा रहा है और मुझे डर है कि मेरा जावास्क्रिप्ट टूट जाएगा।

टिप्पणियां?

उत्तर

1

जैसा कि आपने बताया है, विरासत की समस्या कहीं से भी दिखाई दे सकती है। जल्दी इंजीनियर से अधिक मत करो।

आपके द्वारा वर्णित मास्टरपेज समस्या के साथ, आप विभिन्न सीएसएस फ़ाइलों में/बाहर स्वैप कर सकते हैं और मास्टरपृष्ठ से जेनरेट किए गए HTML के हिस्सों को छिपाने/बदलने के लिए चयनकर्ताओं का उपयोग कर सकते हैं।

8

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

+0

+1 ... यही वह है जो मैं करता हूं। –

+0

मुझे लगता है कि आपकी कहानियां क्या है, जबकि आप व्यक्तिगत रूप से उनका उपयोग नहीं करेंगे, अगर आपने किया, तो आप उन्हें सबसे अधिक लचीलापन देने के लिए घोंसला देंगे। मैं आंतरिक क्रोम, सिलो प्वाइंट का पालन नहीं करता, लेकिन आप उनका उपयोग क्यों नहीं करेंगे? – ChadD

+0

तो मान लें कि मैं प्रत्येक पृष्ठ पर एक सामान्य शीर्षलेख और स्टाइलशीट चाहता था; मेरे पास मुख्य मास्टर पेज होगा। फिर मेरी साइट के एक विशिष्ट क्षेत्र में, मेरा ब्लॉग क्षेत्र कहें, मेरे पास एक और मास्टर पेज होगा जिसमें मुख्य मास्टर पेज और पृष्ठ सामग्री के अंदर होगा। मैं कई अलग-अलग पृष्ठों में समान सामग्री की अलग-अलग डिग्री साझा करने के लिए अन्य मास्टर पृष्ठों के अंदर मास्टर पेजों को घोंसला कर सकता हूं। – Mark

13

डरो मत।

आप जितना चाहें उतने प्लेसहोल्डर बना सकते हैं, जिससे आपका मास्टर पेज बहुत दानेदार हो जाता है। इन प्लेसहोल्डर में डिफ़ॉल्ट सामग्री & नियंत्रण भी हो सकती है।

इसलिए 90% पृष्ठों में जहां आप डिफ़ॉल्ट मार्कअप चाहते हैं, आप ओवरराइडिंग सामग्री को छोड़ सकते हैं।

में मामलों के 10%

वैकल्पिक रूप से जहां कुछ अलग अधिभावी मार्कअप आप आपूर्ति कर सकते हैं चाहते

उदाहरण:

<%@ Page MasterPageFile="..." %> 
<asp:Content ContentPlaceHolderID="Headline" runat="Server"> 
    My homepage headline 
</asp:Content> 

<asp:Content contentplaceholderid="Main" runat="server"> 
    My homepage main content 
</asp:Content> 
:

<%@ Master Language="C#" %> 
<html> 
<body> 
<asp:ContentPlaceholder id="Headline" runat="Server"> 
    My Default Headline 
</asp:ContentPlaceholder> 
<asp:ContentPlaceholder id="Main" runat="Server" /> 
</body> 
</html> 
अपने होमपेज पर

तुम इतनी तरह एक पेज हो सकता था आपके सभी अन्य पृष्ठों पर

शीर्षक के लिए टैग को छोड़कर डिफ़ॉल्ट 'शीर्षक' का लाभ उठाएं:

<%@ Page MasterPageFile="..." %> 
<asp:Content contentplaceholderid="Main" runat="server"> 
    My page main content 
</asp:Content> 
1

एक बार जब आप उनका उपयोग कर लेंगे, तो आप उन्हें इरादे के रूप में उपयोग करना शुरू कर देंगे। वह जानकारी (सीएसएस, सामान्य जेएस, पृष्ठ प्लेसमेंट चिंताओं, इत्यादि से संबंधित है) जो कि एक सामान्य स्रोत की गारंटी देने के लिए पर्याप्त पृष्ठों द्वारा साझा की जाती है, वहां आप वहां जायेंगे और आप खुश होंगे कि वे वहां हैं।

जब आप उस पृष्ठ को तोड़ते हैं, तो आप अपने मुख्य.मास्टर (अलग-अलग चीजों को अलग-अलग) पर थोड़ा समायोजित कर सकते हैं, लेकिन आप समायोजन को तेज़ी से और आगे बढ़ने में सक्षम होंगे।

यदि यह नियमों को तोड़ने वाला एकमात्र पृष्ठ है, तो आप बस उस पृष्ठ को एक अलग मास्टर के उत्तराधिकारी के लिए बता सकते हैं।

हालांकि एक परीक्षण साइट बनाएं और इस पर निर्भर होने से पहले अवधारणा के साथ खेलें।

-2

मास्टर पेज के पीछे विचार अच्छा है (यदि तुच्छ नहीं है) लेकिन यह उनके अहसास के कारण बेकार है।

  1. मास्टर पृष्ठपेज (सामग्री) लेकिन विपरीत फोन नहीं करता है। तो, इसके साथ क्या समस्या है? सरल, आप अलग-अलग पृष्ठों को नहीं बल्कि एक पृष्ठ पर कॉल कर सकते हैं। तो, आप कोडिंग कर रहे हैं और अपने सभी कोड एक ही पेज में डाल रहे हैं। यह बिल्कुल बकवास है। मास्टर पेज कई सामग्री ब्लॉक की अनुमति देता है लेकिन सभी एक ही पृष्ठ पर इंगित करते हैं (इसलिए, कोड को अव्यवस्थित करना)।

  2. यह मास्टर पृष्ठ कोड और फोन करने वाले पृष्ठ, उदाहरण के लिए, वे का हिस्सा एक ही "फार्म" टैग कनेक्ट करने के लिए तुच्छ नहीं है, लेकिन आप अपने पृष्ठ में प्रपत्र टैग करना होगा और आप उपयोग कर सकते हैं फॉर्म टैग केवल एक बार। : -?

  3. चर/मान सीधे साझा नहीं किया जाता है, तो आप, लेकिन यह आवश्यक बना सकते हैं कुछ "हैक"

  4. आप से पहले पेज लोड हो रहा है चक्र (में ध्यान देना चाहिए (उदाहरण के लिए मास्टर के अंदर एक समारोह बुला) लोड)।

मास्टर पेज, अच्छे हैं अगर आपके मास्टर पृष्ठ स्थिर है, अन्यथा यह रास्ता आसान करने के लिए बेहतर है "& पेस्ट कॉपी" हर पृष्ठ में या कस्टम नियंत्रण का उपयोग करने के लिए है, क्योंकि मास्टर पेजेस ऐड जटिलता का एक नया स्तर।

मास्टर पेज के लक्ष्य से याद रखें समय बचाने के लिए, अगर यह इस कार्य में विफल रहता है, तो यह बेकार है।

मेरे 2 सेंट। घोंसले का जिक्र करने के लिए

+1

क्या आप जानते हैं कि आप वास्तव में पाठ के एक ही खंड को तीन बार कॉपी/पेस्ट करते हैं? –

+0

दोस्त ... अपनी पोस्ट को साफ करें – Aheho

+0

-1 मुझे विश्वास नहीं है कि बिंदु 1 सही है, piont 2, आप किसी भी एएसपी पेज पर रनैट सर्वर 2 फॉर्म नहीं डाल सकते हैं, भले ही आप मास्टरपेज का उपयोग करें, 3. सच , चिंताओं को अलग करना एक अच्छी बात है। 4. बहुत सच है। – Myster

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