मुझे पता है कि मैं जटिल प्रकारों को घोंसले के बजाय सब कुछ एक इकाई में धक्का देकर इसे हल कर सकता हूं (क्योंकि वे केवल 1-1 मैपिंग हैं), लेकिन मुझे यह तरीका पसंद है जेनरेट ओएम में गुण।ईएफ 4.2, कोडफर्स्ट - एक पूर्ण प्रकार के भीतर नेविगेशन संपत्ति
मेरे पास एक ग्राहक इकाई है जिसमें एक पूर्ण प्रकार "CrmData" है। CrmData इकाई का एक जटिल प्रकार का पता है।
public class Customer {
[Required]
public CrmSpecificData CrmData { get; set; }
}
[ComplexType]
public class CrmSpecificData {
[MaxLength(40)]
public string FirstName { get; set; }
[MaxLength(80)]
public string LastName { get; set; }
public Address Address { get; set; }
}
[ComplexType]
public class Address {
[MaxLength(150)]
public string Address1 { get; set; }
[MaxLength(150)]
public string Address2 { get; set; }
[MaxLength(100)]
public string City { get; set; }
[MaxLength(15)]
public string PostalCode { get; set; }
public StateProvince StateOrProvince { get; set; }
public virtual CountryRegion CountryOrRegion { get; set; }
}
StateProvince & CountryRegion प्रकार मेरी DB में संस्थाओं (कैसे AdventureWorks नमूना डीबी काम करता है के समान) कर रहे हैं। समस्या यह है कि जब ईएफ मॉडल बनाने की कोशिश करता है, तो यह विफल रहता है:
प्रकार 'MyCo.Crm.Entities.StateProvince' पहले से ही एक इकाई प्रकार के रूप में कॉन्फ़िगर किया गया है। इसे एक जटिल प्रकार के रूप में पुन: कॉन्फ़िगर नहीं किया जा सकता ..
मैंने स्टेटप्रोवेंस को जटिल प्रकार बनाने की कोशिश की है लेकिन इससे समस्या हल नहीं होती है। विचार?
public class StateProvince {
[Key]
public int StateProvinceId { get; set; }
[MaxLength(3)]
public string StateProvinceCode { get; set; }
[MaxLength(50)]
public string Name { get; set; }
}
करने के लिए सभी नेविगेशन गुण failright बिना के बाद