2010-10-08 14 views

उत्तर

2

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

IUserType एक कस्टम क्रमबद्धता का उपयोग कर कॉलम में एक प्रकार का मानचित्रण करने का एक तरीका है। उदाहरण के लिए यदि आप एक mongodb ObjectId (जो एक guid से अधिक कुछ नहीं है) को मैप करना चाहते थे, तो आप मैपिंग करने के लिए कस्टम IUserType लिख सकते हैं। अन्य उदाहरण समृद्ध उपयोगकर्ता प्रकारों या एन्कोडिंग/एन्क्रिप्टेड फ़ील्ड को डीकोड करने के लिए थोड़ा सा मुखौटा मैप कर सकते हैं।

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