2009-10-01 16 views
13

में नेस्टेड घटकों का मानचित्रण करना मेरे पास एक 'उपयोगकर्ता' इकाई है जिसमें 'पता' मान ऑब्जेक्ट होता है। मेरे पास एफएनएच की घटक अवधारणा का उपयोग करके यह मैपिंग ठीक है। हालांकि, पता वीओ में एक देश भी शामिल है जो एक और मूल्य वस्तु है। मैंने माना था कि यह सिर्फ एक और घटक के रूप में घोंसला होना चाहिए, लेकिन यह काम नहीं लग रहा है। क्या कोई मुझे बता सकता है कि मुझे इसे कैसे हल करना चाहिए?फ्लुएंट एनएचबेर्नेट

मानचित्रण के लिए कोड के नीचे है ...

धन्यवाद!

public UserMapping() 
     { 
      Table("Users"); 
      Id(c => c.Id).GeneratedBy.HiLo("100"); 
      Map(c => c.UserName).Not.Nullable().Length(64); 
      Map(c => c.Email).Not.Nullable().Length(128); 
      Map(c => c.Password).Not.Nullable().Length(256); 
      Map(c => c.Roles).Length(64); 
      Map(c => c.FirstName).Not.Nullable().Length(64); 
      Map(c => c.LastName).Not.Nullable().Length(64); 
      Map(c => c.BirthDate).Not.Nullable(); 
      //Address 
      Component(x => x.Address, m => 
      { 
       m.Map(x => x.AddressLine1).Not.Nullable(); 
       m.Map(x => x.AddressLine2); 
       m.Map(x => x.City).Not.Nullable(); 
       m.Map(x => x.Region); 
       m.Map(x => x.PostalCode).Not.Nullable(); 
       //*****Country Here******** 
       // country has Name and Code 

      }); 
     } 

उत्तर

13

आह, एफएनएच मेलिंग सूची से जिमी बोगर्ड ने मुझे दिखाया - यह काफी सरल है। मुझे नहीं पता कि मैं पहले क्या कर रहा था! वैसे भी, किसी और के लिए जो रुचि रखते हैं:

Component(c => c.Address, m => 
{ 
    m.Component(cp => cp.Country, m2 => 
    { 
     m2.Map(x => x.Name); //etc 
    } 
+1

कमाल। मुझे एहसास नहीं हुआ कि आप उन्हें इस तरह घोंसला कर सकते हैं। मैं एक सप्ताह के लिए ऐसा करने पर काम कर रहा हूं। –

+0

क्या होगा यदि मेरे पास नाम और कोड के बजाय देश के लिए पते में आईडीकंट्री है (बशर्ते कि आईडीकंट्री देश की प्राथमिक कुंजी है)? – Apocatastasis

0

मैं Country के लिए एक नक्शा बना सकते हैं और m.References(x => x.Country) का प्रयोग करेंगे।

+3

लेकिन फिर क्या यह देश को मूल्य वस्तु के बजाय एक इकाई के रूप में नहीं मानता? शायद ऐसा करने के साथ कोई नकारात्मक पक्ष नहीं है। – UpTheCreek

+2

एक नकारात्मक पक्ष है। संस्थाओं का अपना "जीवन" होता है (जो सभी प्रश्नों को चुनने और अद्यतन करने पर प्रभाव डालता है) और हम नहीं चाहते हैं कि यहां 'पता' होना चाहिए जो स्वयं ही रहता है। – NOtherDev

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