one-to-one
स्पष्ट FK संपत्ति के साथ संबंध (जैसे आपका PayGroup.SupervisorId
) समर्थित नहीं है।
तो उस संपत्ति को मॉडल से हटा दें:
public class PayGroup
{
public int Id { get; set; }
public virtual Employee Supervisor { get; set; }
}
और निम्न धाराप्रवाह मानचित्रण का उपयोग करें:
modelBuilder.Entity<PayGroup>()
.HasRequired(e => e.Supervisor)
.WithOptional()
.Map(m => m.MapKey("SupervisorId"));
WithOptional()
कॉल दो चीजें निर्दिष्ट करता है। पहला यह कि Employee
. में कोई उलटा नेविगेशन गुण नहीं है क्लास, और दूसरा कि FK वैकल्पिक है (Allow Nulls = true
तालिका में)।
यदि आप उलटा नेविगेशन गुण जोड़ने का निर्णय लेते हैं
public class Employee
{
public string EmployeeId { get; set; }
public string FullName { get; set; }
public virtual PayGroup PayGroup { get; set; } // <=
}
इसे WithOptional(e => e.PayGroup)
में बदलें ।
यदि आप इसे आवश्यक बनाना चाहते हैं (Allow Nulls = false
तालिका में), फिर संबंधित WithRequiredDependent
. का उपयोग करें अधिभार (आश्रित यहाँ इसका अर्थ है कि Employee
प्रिंसिपल . होंगे और PayGroup
आश्रित होगा )