पहचान 2.0.0 में हम प्रकार IdentityUserRoles साथ ApplicationUser में भूमिकाओं नेविगेशन संपत्ति है और हम उपयोगकर्ता है एक ही प्रकार IdentityUserRolesApplicationUser और ApplicationRole पहचान 2.0.0 में नेविगेशन गुण
यहाँ यह
है साथ IdentityRole में नेविगेशन संपत्तिnamespace Microsoft.AspNet.Identity.EntityFramework
{
// Summary:
// EntityType that represents a user belonging to a role
//
// Type parameters:
// TKey:
public class IdentityUserRole<TKey>
{
public IdentityUserRole();
// Summary:
// RoleId for the role
public virtual TKey RoleId { get; set; }
//
// Summary:
// UserId for the user that is in the role
public virtual TKey UserId { get; set; }
}
}
हां, जब मैं context.Users के माध्यम से पुनरावृति मैं केवल प्राप्त कर सकते हैं भूमिका-आईडी
वहाँ standart कई-से-अनेक मानचित्रण betw बनाने के लिए एक रास्ता है ईन ApplicationUser और ApplicationRole?
इस प्रश्न पर कुछ काम करने के बाद मैं अपने मामले के लिए एक समाधान मिल गया है:
मैं इस
foreach (var user in ApplicationDbContextInstance.Users)
{
List<ApplicationRole> UserRoles = user.Roles.ToList();
/*
some logic ...
*/
}
अद्यतन की तरह कुछ कर रही सक्षम होना चाहते हैं। शायद यह इतना सुरुचिपूर्ण नहीं हो सकता है, लेकिन मेरे मामले में मुझे अतिरिक्त नेविगेशन गुणों के साथ IdentityUserRole का विस्तार करना है
मैंने पहचान यूज़ररोल को ApplicationUserRole में बढ़ा दिया है और सभी समाधानों में उचित परिवर्तन किए हैं। यहाँ मेरी नई IdentityUserRole है:
public class ApplicationUserRole : IdentityUserRole<string>
{
public virtual ApplicationUser User { get; set; }
public virtual ApplicationRole Role { get; set; }
public virtual ICollection<GeoSectorForUser> GeoSectors { get; set; }
}
और अब मैं इस तरह कुछ भूमिका में सभी उपयोगकर्ताओं के प्राप्त कर सकते हैं:
foreach(ApplicationRole role in db.Roles){
List<ApplicationUser> users = role.Users.Select(s => s.User).ToList();
}
मेरे मामले में AplicationUserRole अतिरिक्त नेविगेशन गुण भंडारण ताकि समाधान काम किया है के लिए आवश्यक है मेरे लिए। लेकिन मैं अभी भी
'IdentityUserRole' मध्यवर्ती वस्तु है पहले से ही कई से अधिक रिश्तों को प्रदान कर रहा है। तो 'पहचान यूज़र' <-> 'पहचान यूज़ररोल <-> 'पहचानता' – DavidG
आपका अपडेट मेरे लिए काम नहीं करता है। नया माइग्रेशन बनाने की कोशिश करते समय मुझे अपवाद मिलते हैं। – Thomas