2012-01-05 21 views
26

मैं समझने के लिए इस शब्द का अर्थ क्या है उलझन में हूँ के बीच क्या अंतर है? आप सभी को धन्यवाद।एक मॉडल और एक इकाई

+0

रिश्ते। बहुत से। – wildplasser

+1

एंटिटी और मॉडल के बीच अंतर के संबंध में - http://stackoverflow.com/questions/5863870/how-should-a-model-be-structured-in-mvc –

उत्तर

26

मुझे आशा है कि मैं अपनी बात यहाँ वैसे भी याद नहीं किया है king.net ...

मानते हुए आप इकाई मॉडलिंग या इकाई-संबंध मॉडलिंग (ERDs) के बारे में बात कर रहे हैं:

  • एक इकाई किसी वास्तविक दुनिया इकाई का प्रतिनिधित्व करती है - उदाहरण के लिए छात्र, पाठ्यक्रम,
  • किसी इकाई में विशेषता होगी - उदा। छात्र का पहला नाम, उपनाम, जन्मतिथि
  • किसी इकाई के संबंध होंगे - उदा। छात्र "पाठ्यक्रम पर नामांकित है (जहां छात्र और पाठ्यक्रम गुणों के साथ संस्थाएं हैं और" नामांकित है "संबंध है।
  • संबंध" एक-से-एक "," एक से कई "या" कई-कई लोगों के लिए "- जैसे एक छात्र" पर दाखिला लिया है "कई पाठ्यक्रमों और इसी तरह एक पाठ्यक्रम" है डेटा मॉडल "" कई छात्रों
  • संबंधों को भी प्रमुखता

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

ईआरडी शर्तों में, आपके पास "तार्किक" और "भौतिक" मॉडल हो सकते हैं। तार्किक डेटा-मॉडल को सरल उच्च-स्तरीय शर्तों में वर्णित करता है जो इसे लागू करने के लिए आवश्यक तकनीकी विवरण को जोड़ता है। यह सिस्टम समाधान अवलोकन का प्रतिनिधित्व करता है। भौतिक मॉडल में वास्तव में सिस्टम को लागू करने के लिए आवश्यक तकनीकी विवरण शामिल हैं (जैसे "कई से कई" संबंधों को लागू करने के लिए "कई से अधिक शामिल तालिकाओं" की आवश्यकता होती है)।

यहाँ ऑन लाइन कुछ ट्यूटोरियल हैं (हालांकि मुझे यकीन है कि वहाँ हजारों होना चाहिए):

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

आशा इस मदद करता है, वेन

+0

पर एक उत्कृष्ट उत्तर है, उत्तर देने के लिए धन्यवाद और समझाने। मैं सिर्फ 'एमवीसी' पैटर्न के बारे में नहीं हूं, लेकिन मेरा मतलब है 'एमवीएक्स' पैटर्न- 'एमवीसी', 'एमवीसीपी', 'एमवीवीएम'। फिर से धन्यवाद। सहायक। –

3

सबसे पहले, पता करने के लिए इकाई के बारे में आप कक्षा के बारे में पता होना चाहिए। उनमें से सभी एक ही फ़ील्ड का प्रतिनिधित्व करते हैं लेकिन घोषणा के आधार पर शब्दावली परिवर्तन बदलती है।

उदाहरण के तौर पर किसी भी डेटाबेस [एसक्यूएल, ओरेकल, इनफॉर्मिक्स, कैसंद्रा ..] से एक टेबल पर विचार करें।

वर्ग:

आम तौर पर एक टेबल है एक जब तक यह edmx या dbmx में जोड़ा जाता है एक वर्ग के रूप में माना।

//Student class 
     public class Student() 
     { 
     //Properties 
     public int StudentNumber; 
     public string StudentName; 
     } 

ENTITY:

  • खींचें ड्रॉप करने के बाद/dbmx/edmx यह के रूप में इकाई में जाना जाता है में तालिका जोड़ने।

  • प्रत्येक इकाई अपने इसी वर्ग से उत्पन्न होता है और हम जो
    LINQ या संस्था का उपयोग कर प्रदर्शन कार्यों के लिए उपयोग किया जाता है संस्था के लिए गुण जोड़ सकते हैं।

डेटामॉडल:

  • तालिका में सभी क्षेत्रों में शामिल है।

  • डेटामोडेल आपके सीएसटीएमएल या नियंत्रक का सीधा वर्ग संदर्भ है जहां आप सीआरयूडी संचालन करने के लिए विशेषताओं तक पहुंच सकते हैं।

ViewModel:

  • कुछ स्थितियों होते हैं जहाँ हम CRUD संचालन अधिक एक से मॉडल (टेबल) प्रदर्शन करने के लिए की जरूरत है।
  • इसलिए हम कक्षा में हमारे सभी आवश्यक मॉडल गठबंधन करते हैं और उन्हें में अपने कन्स्ट्रक्टर में परिभाषित करते हैं।

उदाहरण: मान

//Student class 
public class Student() 
{ 
//Properties 
public int StudentNumber; 
public string StudentName; 
} 
//Marks Class 
Public class Marks() 
{ 
public int Maths; 
public int Physics; 
public int Chemistry; 

//Now sometimes situations occur where we have to use one datamodel inside //other datamodel. 
public Student StudentModel; 
} 
14

इन शब्दों की परिभाषा काफी अस्पष्ट है देता है। आपको विभिन्न स्थानों पर अलग-अलग परिभाषाएं मिलेंगी।

इकाई: एक इकाई डेटाबेस के रूप में डेटाबेस में सहेजी गई आपके डोमेन ऑब्जेक्ट का एक उदाहरण प्रस्तुत करती है। इसमें कुछ विशेषताएं हैं जिन्हें हम अपने टेबल में कॉलम के रूप में दर्शाते हैं।

मॉडल: एक मॉडल आमतौर पर वास्तविक दुनिया वस्तु का प्रतिनिधित्व करता है जो समस्या या डोमेन स्थान से संबंधित है। प्रोग्रामिंग में, हम वस्तुओं का प्रतिनिधित्व करने के लिए कक्षाएं बनाते हैं। इन वर्गों, जिन्हें मॉडल के रूप में जाना जाता है, में कुछ गुण और विधियां हैं (वस्तुओं के व्यवहार को परिभाषित करना)।

ViewModel: अवधि ViewModel MVVM (मॉडल देखें ViewModel) डिजाइन पैटर्न से निकलती है। ऐसे कई उदाहरण हैं जिनमें दृश्य द्वारा प्रस्तुत किया जाने वाला डेटा दो अलग-अलग वस्तुओं से आता है। ऐसे परिदृश्यों में, हम एक मॉडल वर्ग बनाते हैं जिसमें दृश्य द्वारा आवश्यक सभी गुण होते हैं। यह एक डोमेन मॉडल नहीं है लेकिन ViewModel क्योंकि, एक विशिष्ट दृश्य इसका उपयोग करता है। इसके अलावा, यह वास्तविक दुनिया वस्तु का प्रतिनिधित्व नहीं करता है।

डेटामोडेल: किसी समस्या को हल करने के लिए, वस्तुएं एक दूसरे के साथ बातचीत करती हैं। कुछ वस्तुएं उनके बीच एक रिश्ता साझा करती हैं और इसके परिणामस्वरूप, एक डेटा मॉडल बनाते हैं जो वस्तुओं और उनके बीच संबंधों का प्रतिनिधित्व करता है।

ग्राहक आदेशों के प्रबंधन के आवेदन में, उदाहरण के लिए, यदि हमारे पास ग्राहक और ऑर्डर ऑब्जेक्ट है तो ये ऑब्जेक्ट्स उनके बीच कई रिश्तों को साझा करते हैं। डेटा मॉडल अंततः एक दूसरे के साथ बातचीत करने के तरीके पर निर्भर करता है। डेटाबेस में, हम डेटा मॉडल को कुछ अन्य तालिकाओं का जिक्र करते हुए तालिकाओं के नेटवर्क के रूप में देखते हैं।

अधिक जानने के लिए के बारे में वस्तु रिश्तों पर जाएँ: Basics of Object Relationships

अधिक जानकारी के लिए देखें: Entity vs Model vs ViewModel vs DataModel

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