मिश्रण कोणीय और ASP.NET MVC / वेब एपीआई?


40

मैं ASP.NET MVC / वेब एपीआई का उपयोग करके आता हूं और अब मैं कोणीय का उपयोग करना शुरू कर रहा हूं, लेकिन मैं उन्हें मिश्रण करने के उचित तरीके पर स्पष्ट नहीं हूं।

एक बार जब मैं Angular का उपयोग कर रहा हूं तो क्या MVC सर्वर साइड कॉन्सेप्ट अभी भी कोई मूल्य प्रदान करता है? या क्या मुझे कोणीय HTTP कॉल के लिए डेटा प्राप्त करने के लिए शुद्ध रूप से वेब एपीआई का उपयोग करना चाहिए?

वहाँ शायद एक और अधिक नीचे शुरू बिंदु मैं का उपयोग करना चाहिए अगर वी। एस। टेम्पलेट बहुत सारी चीजें जोड़ रहा है मुझे ज़रूरत नहीं है?

मुझे सर्वर साइड = प्योर डेटा और क्लाइंट साइड = प्योर एचटीएमएल प्रोसेसिंग का एक सख्त विभाजन का विचार पसंद है।


जवाबों:


17

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

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

वहाँ कुछ पुस्तकालयों कि ASP4 डिफ़ॉल्ट रूप से शामिल हैं और उन भी MVC4 टेम्पलेट्स में शामिल थे। पृष्ठ में वास्तव में कई चीजें शामिल हैं जिनकी आवश्यकता नहीं है, साथ ही परियोजना में शामिल हैं और कभी भी उनके डिफ़ॉल्ट पृष्ठों द्वारा संदर्भित नहीं किया गया है। आपको jQuery को छोड़कर सब कुछ सुरक्षित होना चाहिए और मैं भी jQueryUI को बाहर निकालने के लिए जाना चाहिए। कई चूक का मतलब अच्छी तरह से है लेकिन एक बार जब आप अपने डोमेन ज्ञान को भरना शुरू करते हैं तो आप उन विशिष्टताओं का उपयोग करेंगे जो आपकी विशिष्ट आवश्यकताओं को पूरा करती हैं।

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

मैंने आपको आज पहले टिप्पणी पढ़ी और मूल रूप से उल्लेख किया गया यह दिखाने के लिए एक डेमो समाधान एक साथ फेंक दिया। समाधान में कुछ मूल "फुल" भी हैं, हालांकि जब कोणीय और बूटस्ट्रैप जोड़ते हैं तो आपको कोर लाइब्रेरी और हर व्युत्पत्ति मिलती है। यह nuGet का उपयोग करने का व्यापार बंद है।

इसे देखें : https://github.com/Queue Hammer / AngularWithPartialViewViews

एंगुलर सीखने में मुझे एंगुलर-सीड प्रोग्राम काफी मददगार लगा। खासकर तब जब मैंने उनकी साइट पर डेमो की कोशिश की। नमूना परियोजना बस इतनी अलग है कि यह आपको सीखने में मदद करे। उसके बाद मैंने कोणीय-आवश्यकता-बीज को देखा लेकिन यह एक और पोस्ट है। कोणीय कदम से कदम http://docs.angularjs.org/tutorial कोणीय बीज: https://github.com/angular/angular-seed


तो यह कुछ सर्वर साइड विचार है कि कैसे MVC सामान्य रूप से काम करता है .. और फिर उन विचारों में से प्रत्येक के लिए कई ग्राहक पक्ष कोणीय विचार (शायद कुछ विशिष्ट इकाई के लिए एक निर्माण / विवरण / संपादन) होगा .. यह समझ में आता है। यदि ऐसा है, तो मेरी इच्छा है कि मुझे एक ऐसा टेम्पलेट मिल जाए, जो मुझे MVC और कोणीय का एक साथ उपयोग करने के लिए एक अच्छे रास्ते पर डाल
सके

डेमो प्रोजेक्ट के लिए एक लिंक जोड़ा और जहां मैंने पहली बार कोणीय में देखना शुरू किया। मैं आम तौर पर एसपीए के बारे में और कुछ बेहतर पैटर्न / पुस्तकालयों के बारे में ब्लॉग पर जा रहा हूं जो अगले कुछ महीनों में अपनी स्थापत्य चुनौतियों को हल करते हैं। मैं अपने पोस्ट को अपडेट करूँगा जब मैं करूँगा।
कतार हैमर ५

बस आपका लिंक मिल गया .. डेमो देखा। अच्छा लग रहा है .. पहला सवाल है .. तो .. आप ASP.NET MVC कार्यक्षमता को मुख्य पृष्ठ के रूप में शुरू कर रहे हैं .. जो उस पृष्ठ से परे बाकी सब कोणीय आंशिक विचार है .. क्या आपके पास दो मुख्य ASP हो सकते हैं। NET MVC के विचार? दूसरे शब्दों में .. ASP.NET MVC दृश्य कोणीय आंशिक विचारों के लिए एक अभिभावक है .. उदाहरण के लिए .. शायद मैं एक ASP.NET दृश्य के तहत सभी आंशिक विचार नहीं चाहता .. क्या इसका कोई मतलब है? क्या आप मुझे दिखा सकते हैं? जो मुझे लगता है कि मुझे लगता है .... या शायद मैं जो कह रहा हूं उसका कोई अच्छा स्थान नहीं है।
पंकटर

और यह क्या है क्योंकि यह इनमें से किसी को कभी नहीं बुलाता है?
पंकटर

आप भागमभाग लगभग कहीं भी रख सकते हैं। आप प्रति दृश्य एक एक्शन के साथ अधिक नियंत्रक बना सकते हैं, मैंने एक "partialsController.cs" का उपयोग किया है जो प्रोजेक्ट में रूट्स को कोणीय ऐप मॉड्यूल में परिभाषित विचारों के साथ परिपक्व करता है। इसलिए, आंशिक / view1 भाग नियंत्रक को बुला रहा है और कार्रवाई दृश्य प्राप्त कर रहा है जो तब दृश्य दृश्य प्राप्त करता है। कार्यों में आप व्यू () कह सकते हैं; एक स्ट्रिंग पैरामीटर के साथ अपने दृश्य का स्थान पास करें। इसलिए आपके पास अपनी पसंद के अनुसार इसे व्यवस्थित करने का लचीलापन है।
क्यू हैमरमेर

18

वहाँ शायद एक और अधिक नीचे शुरू बिंदु मैं का उपयोग करना चाहिए अगर वी। एस। टेम्पलेट बहुत सारी चीजें जोड़ रहा है मुझे ज़रूरत नहीं है?

ये VS टेम्प्लेट शुरुआत में शुरुआती सेटअप और लर्निंग कर्व को ट्रिम करने के लिए अच्छे हैं, हालाँकि आपको अपनी वास्तविक प्रोजेक्ट आवश्यकताओं के लिए इन्हें कस्टमाइज़ करना होगा।

उदाहरण के लिए, इस साइट http://www.reviewstoshare.com पर , मेरे दोस्त AngularJSके साथ प्रयोग कर रहा है ASP.NET MVC। ध्यान रखें कि यह साइट पहले से ही आवश्यक रूप से पेज इंटरैक्शन के लिए ASP.MVC + Jquery का उपयोग करके बनाई गई थी।

दूसरी ओर, साइट पर अभी भी कुछ "अज़ीक्सी" प्रकृति है जैसे कि टिप्पणी, मतदान, झंडारोहण आदि। यह स्टाकेओवरफ़्लो से बहुत अलग नहीं है। AngularJS से पहले यह $(document).ready()कॉलबैक के भीतर Jquery प्लगइन्स और फ़ंक्शंस की गड़बड़ी थी , जेएस कोड का उल्लेख नहीं करने के लिए परीक्षण करने योग्य नहीं था।

कुल मिलाकर, दोनों का उचित मिश्रण होने से आपकी साइट धीमी और क्रियाशील हो जाती है।

यहाँ छवि विवरण दर्ज करें

देखने के लिए कुछ अच्छे संदर्भ :


या यदि कोणीय आंशिक पृष्ठों के संग्रह के तहत कुछ नियमित एमवीसी विचार हैं जो मदद नहीं करेंगे (जैसा कि मैंने अपनी उपरोक्त टिप्पणी में उल्लेख किया है)
punkouter

यह सच है, एसईओ मुद्दों को ताजा अपडेट द्वारा हल किया गया है।
एल युसुबोव

3
तो, आलोचना करने के लिए नहीं, लेकिन चार्ट पर नकारात्मक बयान वास्तव में एक्स अक्ष से नीचे नहीं होंगे? यह चार्ट को कभी विस्तारित पाप लहर की तरह दिखाई देगा। मुझे पता है कि यह आपका चार्ट नहीं है, बल्कि इसका बुरा विज्ञान है।
क्यू हैमरमेर

12
पार्टियों में आपको असली मज़ा चाहिए। :-)
थॉमस स्टॉक

1
मैं 'वेरी कूल!' के दोनों तरफ लहर के दो निचले बिंदुओं में पूरी तरह से फंस गया हूँ। बुलबुला, एक संयुक्त चमकदार कोणीय नरक के रूप में।
मेटागुरु
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.