2010-01-15 7 views
5

का उपयोग करने पर सलाह मेरे पास एक सार्वजनिक सामना करने वाली शौक साइट है जो क्लासिक एएसपी में लिखे गए लगभग 3000 अद्वितीय आगंतुकों को प्राप्त करती है, जो एक सुधार और फिर से डिजाइन की बुरी जरूरत है। मुझे यह अहसास हुआ है कि एएसपीनेट के लिए अपग्रेड उन शौकियों को लागू करने का सबसे अच्छा तरीका है जो शौकिया (आरएसएस फ़ीड, प्रमाणीकरण और उपयोगकर्ता प्रोफाइल का उपभोग करने वाले) के लिए एएसपी में बहुत मुश्किल हैं, लेकिन जो मैं प्राप्त करना चाहता हूं एक बार मैं फिर से डिजाइन/उन्नयन पिछले में अटक गया।एएसपीनेट वेबफॉर्म या एमवीसी

लेकिन, मुझे अनिश्चितता के साथ लकड़बारा हो गई है कि किस तरह से जाना है: वेब फॉर्म या एमवीसी - साथ ही यह तथ्य कि हमेशा लॉन्च करने के बारे में कुछ नई रिलीज होती है, ऐसा लगता है कि यह सुधारने के लिए बाहर होगा सीखने की अवस्था। तो मैं वेबफॉर्म के बारे में पढ़ने में घंटों खर्च करता हूं, फिर मुझे कुछ बताता है जो मुझे बताता है कि मैं एमवीसी के बारे में सोचने से बेहतर हो सकता हूं, फिर एमवीसी के बारे में पढ़ सकता हूं और आश्चर्य करता हूं कि यह वास्तव में उपयुक्त है कि मैं क्या करने की कोशिश कर रहा हूं।

कोई भी ट्यूटोरियल और स्टार्टर साइट्स वास्तव में उन बातों के बारे में बात नहीं करती है जो परंपरागत पुरानी स्थैतिक सूचना साइट्स (कैटलॉग या उपयोगकर्ता-सामग्री संचालित नहीं) हैं।

मेरी साइट लगभग 75% स्थिर जानकारी पृष्ठ है जो शायद ही कभी बदलती है। हालांकि, उन सभी पृष्ठों पर उपयोगकर्ता इंटरफ़ेस में एएसपी स्क्रिप्टिंग आवश्यक है - गतिशील रूप से या यादृच्छिक रूप से डिज़ाइन तत्वों (जैसे हेडर फोटो) चुनना या वर्ष के दिन या यादृच्छिक रूप से एक विशेष साइडबार बॉक्स प्रदान करना।

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

शेष पृष्ठों में से अधिकांश के लिए, वे डेटा प्रदर्शित करने के बारे में हैं। उनमें से कुछ छोटे रिकॉर्ड हैं (साल के इस विशेष दिन के बारे में महत्वपूर्ण क्या है इसके बारे में almanac प्रकार की जानकारी) और मैं इसे सहेजता हूं और इसे पृष्ठ में एक ऐरे चर से खींचता हूं। अन्य एक एक्सेस डेटाबेस से जानकारी खींचते हैं जो शायद ही कभी पर्याप्त है कि मैंने साइट पर लाइव सीयूडी कार्यक्षमता को लागू करने पर कभी भी परेशान नहीं किया है (और आवश्यक भूमिकाएं और इसे सुरक्षित करने के लिए प्रमाणीकरण), लेकिन डेटाबेस को ऑफ़लाइन अपडेट करें और परिवर्तनों को लाइव भेजने के लिए अपलोड करें ।

एएसपीनेट के साथ, मैं ठीक से SQL सर्वर पर जा रहा हूं और लाइव व्यवस्थापन पृष्ठों का निर्माण कर रहा हूं। मुझे एक्सेस के साथ चिपकने की जरूरत नहीं है।

लेकिन, मैं कच्चे HTML और CSS को लिखने के लिए अधिक उपयोग करता हूं और मुझे वेबफॉर्म (विशेष रूप से व्यूस्टेट और ईवेंट/पोस्टबैक) को अवधारणात्मक रूप से अपने सिर को प्राप्त करने के लिए एक चुनौती मिल रही है। भले ही यह कुछ सर्वर-साइड कोड के साथ फ़ाइल सिस्टम में स्थिर पृष्ठ के साथ अधिक फिट बैठता है जिसका उपयोग मैं करता हूं।

दूसरी तरफ, एमवीसी प्यार से हाथ से कोडित डिजाइन के लिए उपयुक्त है, लेकिन जहां सब कुछ डेटाबेस से खींच लिया जाता है।

आप क्या सलाह देंगे? क्या मुझे सभी स्थिर पृष्ठों को डेटाबेस में खींचना चाहिए और उन्हें एमवीसी में "लेख" दृश्य के माध्यम से सेवा देना चाहिए?

मैं एक पेशेवर डेवलपर नहीं हूं - इसलिए यह मेरे रेज़्यूमे पर सबसे अच्छा दिखाई देने वाला नहीं है। मैं सिर्फ यह देख रहा हूं कि (ए) क्लासिक एएसपी में वीबीस्क्रिप्ट इनलाइन एक्सप्रेशन से आने वाले किसी के लिए कम से कम सीखने की वक्र है और (बी) मेरी साइट क्या करती है और (सी) मुझे मार्क- ऊपर और सीएसएस।

उत्तर

7

निश्चित रूप से एमवीसी जाओ, खासकर यदि आप एक HTML/CSS guy के रूप में अधिक आरामदायक हैं।पोस्टबैक ऐसी साइट के लिए कोई लाभ नहीं देते हैं जो काफी हद तक स्थिर है, और पेज लाइफसाइकिल के आसपास आपके सिर को पाने में महीनों लगेंगे (मुझे अभी तक एक डेवलपर से मिलना है जो उसमें कोडिंग के 6 महीने बाद जीवन चक्र का मालिक था।)

MVC के लिए एक एएसपी क्लासिक साइट परिवर्तित मूल रूप से दृश्य में अपने HTML और एएसपी टैग चलती हैं और अपनी मौजूदा यूआरएल मार्ग प्रक्रियाओं का उपयोग करके नकल शामिल होगी। आपको कुछ और आधुनिक कार्यक्षमता का उपयोग करने के लिए अपनी स्क्रिप्ट को अपग्रेड करना होगा, लेकिन यह कल्पना करना काफी सरल होगा।

मैं इस विचार से असहमत हूं कि एमवीसी में सब कुछ डेटाबेस से खींचा जाता है - यह आर्किटेक्चर के लिए थोड़ा अप्रासंगिक है। मैंने एमवीसी ढांचे में 100% स्थैतिक साइटों को कोड किया है और इसे प्यार किया है :)

अंगूठे का मेरा नियम इस दिशा में चल रहा है: "वेबसाइटों के लिए एमवीसी, एंटरप्राइज़ वेब अनुप्रयोगों के लिए वेबफॉर्म - शायद।"

4

एमवीसी आप जो कर रहे हैं उसके लिए उपयुक्त है।

यदि विचार हो तो स्थिर होने के लिए यह बिल्कुल ठीक है। उदाहरण के लिए, एमवीसी की फाइल-> नई परियोजना टेम्पलेट द्वारा जेनरेट की गई चीज़ों पर नज़र डालें।

यह देखते हुए कि आप पहले से ही HTML/CSS लेखन के आदी रहे हैं और दोनों व्यवस्थाएं एक सीखने की अवस्था पेश करेंगे, मैं निश्चित रूप से MVC सलाह देते हैं। मुझे लगता है कि आप पाएंगे कि एमवीसी ए और सी वेबफॉर्म से भी बेहतर है (और दोनों संतुष्ट बी)।

0

उपयोग क्या, सबसे अधिक उत्पादक है अगर आप webforms साथ और घटना चालित मॉडल आप हमेशा MVP (Model-View-Presenter) पर गौर कर सकते तरह परिचित हैं।

ASP.NET MVC वास्तव में बहुत अच्छा है और मेरे लिए, यह उत्पादकता में वृद्धि करता है।

2

अपने अनुभव को ध्यान में रखते हुए मैं आपको एएसपी.नेट एमवीसी का उपयोग करने का सुझाव दूंगा। चूंकि आप HTML & सीएसएस से परिचित हैं, इसलिए आपको एमवीसी पैटर्न में उपयोग करना होगा जो एक हफ्ते से भी कम काम है। इसके अलावा एमवीसी सिर्फ डेटा दिखाने के लिए बेहतर और तेज़ है और यह आउटपुट कैशिंग का समर्थन करता है ताकि आप स्थिर पृष्ठों को कैश कर सकें और शानदार गति प्राप्त कर सकें। इसके अलावा दोनों के बीच मिश्रण-मिश्रण का उपयोग करने में कोई समस्या नहीं है - आपके पास अभी भी वेबफॉर्म पेज हो सकते हैं और उन नियंत्रणों का उपयोग करें जहां आपको उनकी आवश्यकता है।

0

सबसे पहले आपको यह सुनिश्चित करने की ज़रूरत है कि एक पुनर्लेख प्रयास के लायक है। मेरे अनुभव में पुनर्लेखन अपेक्षा से अधिक काम लेते हैं और एक लंबे समय तक वापसी का समय लेते हैं। इसका मतलब यह नहीं है कि उन्हें नहीं किया जाना चाहिए, इसका मतलब यह है कि एक शुरू करने के लिए वास्तव में अच्छे कारण होना चाहिए। आपके द्वारा उल्लेख की जाने वाली विशेषताओं को क्लासिक एएसपी में समय के केवल एक अंश में आसानी से कार्यान्वित किया जा सकता है। एक विरासत आवेदन tweaks, बगफिक्स और छिपी हुई सुविधाओं से डरता लड़ाई है। एक पुनर्लेख आमतौर पर उन वर्षों के अनुभव को खोने का मतलब है। यह सब मौजूदा सुविधाओं/नए फीचर्स अनुपात पर निर्भर करता है।

दूसरा, यदि आप फिर से लिखने जा रहे हैं, तो आप एएसपीनेट के अलावा प्रौद्योगिकियों की जांच भी कर सकते हैं। आपके द्वारा वर्णित साइट बहुत ही सामग्री उन्मुख है जो एएसपीनेट एमवीसी की तुलना में बेहतर django फिट हो सकती है। आपकी साइट के साथ शुभकामनाएँ।

0

मैं आपको एएसपी.नेट एमवीसी का उपयोग करने की भी सिफारिश करता हूं क्योंकि आप एचटीएमएल/सीएसएस से काफी परिचित हैं। रूटिंग जैसी सुविधाओं के साथ आप वेबसाइट की संरचना को और बेहतर तरीके से व्यवस्थित कर सकते हैं। यूआरएल के कारण आगंतुकों के लिए आपकी वेबसाइट अधिक अनुमानित हो जाती है।

उदाहरण:

www.domain.com/hobbies/photography 
2

एएसपी से ASP.NET और ASP.NET MVC को पास करने का मेरा अनुभव से, यह एएसपी से ASP.NET MVC करने के लिए पारित करने के लिए आसान है।

weblogs.asp.net/scottgu/archive/2010: हालांकि, सीखने की अवस्था इतना आसान कृपया पढ़ें और http://nerddinnerbook.s3.amazonaws.com/Intro.htm का पालन करें और, के बाद आप पढ़ लिया है, देखें, उदाहरण के लिए कौन-सा संस्करण 2 में नया क्या है नहीं है /01/10/asp-net-mvc-2-strongly-typed-html-helpers.aspx

यह अनुभवी डेवलपर्स के लिए एक रैड बन जाएगा!