2011-12-29 12 views
5

एएसपी.Net वेब फॉर्म एप्लिकेशन में jQueryMobile का उपयोग कर एक सही दृष्टिकोण है?
एएसपी.नेट वेब फॉर्म में jQueryMobile या अन्य मोबाइल जेएस लाइब्रेरी का उपयोग करने के पेशेवर और विपक्ष क्या हैं?एएसपी.नेट वेबफॉर्म में jQueryमोबाइल

उत्तर

11

एएसपी.नेट वेब फॉर्म एक अच्छी ढांचा है, लेकिन आपको जावास्क्रिप्ट यूआई ढांचे के साथ मोबाइल विकास के लिए इसकी अधिक आवश्यकता नहीं है। मैं पहले विपक्ष की सूची दूंगा, इसके बाद एक विकल्प के बाद और अंत में कुछ टिप्स दें जब आपको विपक्ष के बावजूद वेब फॉर्म का उपयोग करना होगा।


एएसपी.नेट वेब फॉर्म के साथ समस्या यह है कि आपके पास हमेशा HTML पर पूर्ण नियंत्रण नहीं होता है। certain controls के उपयोग से बचकर, और EnableViewState नियंत्रण और पृष्ठों पर गुणों का उपयोग करके using control adapters द्वारा इसे कम किया जा सकता है। एएसपी.नेट वेब फॉर्म 4.0 unpredictable client IDs जैसे कुछ मुद्दों को भी कम करता है। लेकिन यह सब एएसपी.नेट वेब फॉर्म की प्रकृति के आसपास काम करने के लिए अतिरिक्त काम में शामिल है।

इसके अलावा, अधिकांश वेब नियंत्रणएएसपी.NET वेब फॉर्म के लिए पृष्ठ पर वापस काम करने के लिए पृष्ठ में होंगे। उदाहरण के लिए <asp:DropDown AutoPostBack="true">, <asp:TextBox OnTextChanged="..." > या <asp:Panel DefaultButton="..."> के साथ। यह वास्तव में अच्छा है अगर आपकी विकास शैली अधिकतर सर्वर-साइड है और आप खुश हैं कि इसे सभी क्लाइंट-साइड बनाने के विवरण से परेशान न हों।

<asp:UpdatePanel> एक और बढ़िया उदाहरण है: आप इसे पृष्ठ पर जोड़ते हैं और आपने पेज को जादुई रूप से AJAX- सक्षम किया है। लेकिन यह बहुत सारी जावास्क्रिप्ट प्रस्तुत करता है, आपकी सभी दृश्य स्थिति अभी भी क्लाइंट और सर्वर के बीच भेजी जाती है, और यहां तक ​​कि एक छोटे से अद्यतन के लिए भी पूरा पृष्ठ सर्वर-साइड संसाधित होता है।

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


मुझे लगता है कि समग्र ASP.NET MVC के साथ-साथ मोबाइल विकास के लिए एक बेहतर सामान्य रूप में फिट है, और jQuery मोबाइल के लिए।


आप चाहिए उपयोग ASP.NET वेब फार्म, फिर HTML कि आप jQuery मोबाइल UI सूची तत्वों के लिए उपयोग करने के लिए जा रहे हैं प्रतिपादन के लिए <asp:ListView> तरह नियंत्रण का उपयोग करते हैं। यह नियंत्रण आपको HTML पर काफी अच्छा नियंत्रण देता है।

<asp:UpdatePanel> नियंत्रण का उपयोग न करने का प्रयास करें, क्योंकि तब आप निश्चित रूप से रूपकों को मिश्रित कर रहे हैं। आम तौर पर, पोस्ट बैक पर भरोसा न करें।

इसके बजाय, आप अपने पृष्ठ पर use web methods कर सकते हैं जिसे आप सीधे जावास्क्रिप्ट से कॉल कर सकते हैं। [WebMethod] विशेषता के साथ स्टेटिक पेज विधियां JSON स्वरूपित डेटा लौटाएंगी, जो आज अधिकांश जावास्क्रिप्ट ढांचे के लिए उपयुक्त है। तथ्य यह है कि इन विधियों must be declared as static का अर्थ है कि वे पृष्ठ के जीवन चक्र में भाग नहीं लेते हैं। इसका मतलब यह भी है कि उनके पास बेहतर प्रदर्शन विशेषताएं हैं।

अंत में, यहाँ तक कि जब आप वेब फ़ॉर्म का उपयोग कर रहे हैं, आप हमेशा .ashx फ़ाइलों का उपयोग कर सकते हैं (मूल IHttpHandler और यह अतुल्यकालिक चचेरे भाई, IHttpAsyncHandler है) या ScriptService विशेषता के साथ वेब सेवाओं।भविष्य में एएसपी.नेट एमवीसी का उपयोग करने का फैसला करने के लिए ये विकल्प ठीक से माइग्रेट भी होंगे।

+0

धन्यवाद..मिचीलवोवो। जैसा कि मुझे एएसपी.नेट वेब फॉर्म का उपयोग करना चाहिए, मैं वेबमाइड्स का उपयोग करने या एसिंक हैंडलर का उपयोग करने के बारे में सोच रहा हूं, लेकिन यदि संभव हो, तो मैं इस दृष्टिकोण से बचना चाहता हूं। – Kai

+1

यदि आपको मुझसे कोई फर्क नहीं पड़ता है, तो एमवीसी Jquery मोबाइल के लिए खुद को कैसे बेहतर बनाता है? मैंने कई लोगों को देखा है जो बस कहते हैं "यदि आप .NET वेब फॉर्म का उपयोग कर रहे हैं तो एमवीसी पर स्विच करें" लेकिन इसके पीछे कोई तर्क नहीं देते हैं। मैं वेब प्रपत्रों के साथ एक परियोजना पर काम कर रहा हूं और पोस्टबैक के साथ कुछ समस्याएं आई हैं और वेबमेड या अपडेटपैनल्स मार्ग पर जाने का प्रयास किया है, लेकिन इस बारे में सोच रहा था। – avivas

1

मुझे उम्मीद है कि यह एएसपी.NET वेबफॉर्म पार्टी को धक्का दे रहा है।

उत्तर दोनों एएसपी.नेट वेबफॉर्म अच्छा है, और इसलिए एएसपी.नेट एमवीसी भी है। आज आप क्या कर रहे हैं आप सबसे ज्यादा आरामदायक क्या हैं? आपके पास कितना समय है? परियोजना की समयसीमा क्या है?

हां, वेबफॉर्म उत्पन्न नियंत्रण आईडी बहुत परेशान हैं लेकिन आसपास के काम हैं। हां, UpdatePanel से दूर रहने का प्रयास करें, लेकिन एक ही समय में jQuery का उपयोग करने से आपको रोक नहीं रहा है। UpdatePanel ऐतिहासिक रूप से दुरुपयोग किया गया है। अवधि। यह एक व्यूस्टेट होगर है जो मोबाइल एप्लिकेशन के लिए आदर्श नहीं है।

दिन के अंत में, वेबफॉर्म ठीक काम करेगा, पृष्ठ जीवन चक्र होगा, और कुछ ठोस सर्वर साइड तर्क कर सकता है। एक मोबाइल वातावरण में मैं किसी भी runat=server नियंत्रण से दूर रहना चाहता हूं क्योंकि मैं ज्यादातर अपना खुद का एचटीएमएल बनाना चाहता हूं और ViewState से बचना चाहता हूं। इसके अलावा, पृष्ठ स्तर पर स्थिर [WebMethod, ScriptMethod] अपना कोड व्यवस्थित करने में सहायता करता है।

+0

नोट: हमने बहुत पहले (और अधिक प्रबंधनीय jQuery AJAX कॉल) के पक्ष में अपडेटपेनल को बहुत पहले हटा दिया था। –

+0

मैं यहां एड्रेस करने की कोशिश कर रहा हूं jQuery मोबाइल है, jQuery नहीं। – Kai

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