दिलचस्प पोस्ट
बराबर अनुबंध को लागू करने का सही तरीका मैं अपने क्रोम एक्सटेंशन को गुप्त मोड में कैसे सक्षम कर सकता हूं? मैटप्ललिब में 2 डी गर्मी के नक्शे के माध्यम से पेजिंग / स्क्रॉल करना MongoDB – ऑब्जेक्ट्स को एक दस्तावेज़ सरणी में अपडेट करें (नेस्टेड अपडेटिंग) स्क्रॉल करने योग्य डिवा नीचे छड़ी करने के लिए, जब बाहरी डिवा आकार में बदलाव होता है एक स्ट्रिंग के रूप में महीना का नाम अनुभाग और कार्य openmp के बीच का अंतर SQL सर्वर में एक चयन से मैं कैसे अपडेट करूं? NSUserDefaults में स्ट्रिंग सहेजें? मैं फ़ायरफ़ॉक्स या क्रोम के साथ HTTP POST अनुरोधों को मैन्युअल रूप से कैसे फंसा सकता हूं? एक प्रतिबद्ध संदेश के भीतर GitHub पर समस्या संख्या को लिंक करें मैं jQuery UI Datepicker को स्थानीयकृत कैसे करूं? आप C ++ में निर्भर नाम कैसे समझते हैं मावेन युद्ध निर्भरता ROWS को COLUMNS के रूप में प्राप्त करें (SQL सर्वर डायनेमिक PIVOT क्वेरी)

EF4 कोड पहले: एक नेविगेशन प्रॉपर्टी जोड़ने के बिना रिश्ते को कैसे जोड़ता है

मुझे पहले कोड का उपयोग करते हुए रिश्तों को कैसे परिभाषित करना चाहिए लेकिन किसी नेविगेशन प्रॉपर्टी का उपयोग किए बिना?

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

public class User { public string UserId { get; set; } public string PasswordHash { get; set; } public bool IsDisabled { get; set; } public DateTime AccessExpiryDate { get; set; } public bool MustChangePassword { get; set; } public virtual Role Role { get; set; } } public class Role { public int RoleId { get; set; } public string Name { get; set; } public string Description { get; set; } public virtual ICollection<User> Users { get; set; } public virtual ICollection<Right> Rights { get; set; } } public class Right { public Guid RightId { get; set; } public string Name { get; set; } public string Description { get; set; } public virtual Role Role { get; set; } } 

हालांकि, अगर मैं नेविगेशन गुणों को निकालता हूं, तो कोई संबंध नहीं बनाया जा रहा है। यहां बताया गया है कि कक्षाएं कैसा दिखती हैं।

 public class User { public string UserId { get; set; } public string PasswordHash { get; set; } public bool IsDisabled { get; set; } public DateTime AccessExpiryDate { get; set; } public bool MustChangePassword { get; set; } public int Role RoleId { get; set; } } public class Role { public int RoleId { get; set; } public string Name { get; set; } public string Description { get; set; } } public class Right { public Guid RightId { get; set; } public string Name { get; set; } public string Description { get; set; } public int RoleId { get; set; } } 

ध्यान दें कि नेविगेशन प्रॉपर्टी के बजाय मेरी संबंधित तालिका की प्राथमिक कुंजी है सब कुछ मेज पर बनाया जाता है – रिश्ते को छोड़कर तो मैं यह करने के बारे में कैसे प्राप्त करूं?

BTW, मैंने dbcontext के OnModelCreating विधि में विभिन्न संयोजनों की कोशिश की है, लेकिन कोई फायदा नहीं हुआ। किसी भी प्रकार की मदद की बेहद सराहना की जाती है!

धन्यवाद, मेल

वेब के समाधान से एकत्रित समाधान "EF4 कोड पहले: एक नेविगेशन प्रॉपर्टी जोड़ने के बिना रिश्ते को कैसे जोड़ता है"

मेरा मानना ​​है कि कोड-पहले उपयोग करते समय आपको हमेशा कम से कम एक ओर नेविगेशन प्रॉपर्टी की आवश्यकता होती है। तब आप इसे मैप करने में सक्षम होंगे:

 public class User { public string UserId { get; set; } public string PasswordHash { get; set; } public bool IsDisabled { get; set; } public DateTime AccessExpiryDate { get; set; } public bool MustChangePassword { get; set; } public int RoleId { get; set; } public Role Role { get; set; } } public class Role { public int RoleId { get; set; } public string Name { get; set; } public string Description { get; set; } } public class Right { public Guid RightId { get; set; } public string Name { get; set; } public string Description { get; set; } public int RoleId { get; set; } public Role Role { get; set; } } public class TestContext : DbContext { public TestContext() : base("Entities") {} protected override void OnModelCreating(System.Data.Entity.ModelConfiguration.ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Entity<User>() .HasRequired(r => r.Role) .WithMany() .HasForeignKey(r => r.RoleId); modelBuilder.Entity<Right>() .HasRequired(r => r.Role) .WithMany() .HasForeignKey(r => r.RoleId); } } 

आप रिश्ते को जोड़ने के लिए धाराप्रवाह एपीआई का उपयोग कर सकते हैं, यद्यपि "कॉन्फ़िगरेशन" कोड इकाई कोड से अलग है जिससे इसे कम खोजा जा सकता है।

ईएफ 4.3 में, आप एक प्रवासन जोड़ सकते हैं जो रिश्ते जोड़ता है।