एएसपीएनटी एमवीसी ईएफ में 2 टेबल के बीच रिलेशनशिप टेबल बनाएं

मैंने बनाया:

  • कस्टम कस्टम सदस्यता प्रदाता
  • कस्टम रोल प्रदाता
  • एक उपयोगकर्ता मॉडल
  • एक रोल मॉडल

यह मुझे 2 कस्टम टेबल सही ढंग से बनाते हैं। अब मैं 2 कॉलम के साथ उपयोगकर्ता और भूमिकाओं के बीच तालिका बनाना चाहता हूं: RoleId, UserId

मुझे इस संबंध तालिका (UserInRole) बनाने के लिए ईएफ को सिखाने के लिए अपने मॉडल को ट्विक करना चाहिए?

उपयोगकर्ता मॉडल:

 public class User
{

    [Key]
    public int UserId { get; set; }

    [Required]
    public Int32 CompanyId { get; set; }

    [Required]
    public String UserName { get; set; }

    public String Password { get; set; }

    public String PasswordSalt { get; set; }

    public String Email { get; set; }

    public Boolean IsApproved { get; set; }

    public Boolean IsLockedOut { get; set; }

    public DateTime CreateDate { get; set; }

    public DateTime LastLoginDate { get; set; }

    public DateTime LastPasswordChangedDate { get; set; }

    public DateTime LastLockoutDate { get; set; }

}

प्रेरणास्रोत:

public class Role
{

    [Key]
    public int RoleId { get; set; }

    [Required]
    [MaxLength(20)]
    public string Name { get; set; }

    public ICollection AssignedUsers { get; set; }

}
0
जोड़ा संपादित
विचारों: 1

2 उत्तर

public class Role
{

    [Key]
    public int RoleId { get; set; }

    [Required]
    [MaxLength(20)]
    public string Name { get; set; }

    public ICollection AssignedUsers { get; set; }

}


 public class User
{

    [Key]
    public int UserId { get; set; }

    [Required]
    public Int32 CompanyId { get; set; }

    [Required]
    public String UserName { get; set; }

    public String Password { get; set; }

    public String PasswordSalt { get; set; }

    public String Email { get; set; }

    public Boolean IsApproved { get; set; }

    public Boolean IsLockedOut { get; set; }

    public DateTime CreateDate { get; set; }

    public DateTime LastLoginDate { get; set; }

    public DateTime LastPasswordChangedDate { get; set; }

    public DateTime LastLockoutDate { get; set; }

    public ICollection Roles{ get; set; }

}
0
जोड़ा

यदि आप कोड-प्रथम ईएफ का उपयोग कर रहे हैं, तो आपको केवल रोल क्लास में उपयोगकर्ताओं का संग्रह जोड़ना होगा और इसके विपरीत। ईएफ अंतर्निहित डेटा स्टोर में कई से अधिक रिश्ते बनाने के लिए सिग्नल के रूप में इस दो-तरफा लिंक लेता है। संक्षेप में, आपके वर्गों को इस तरह कुछ बढ़ाया जाएगा ...

public class User
{
  ...

  List Roles {get; set;}

}

public class Role
{
  ...

  List Users {get; set;}
}
0
जोड़ा