Here are my class structures
public class Group
{
public virtual int GroupId {get;set;}
public virtual IDictionary<Resource, Permission> ResourcePermissions { get; set; }
}
public class Resource
{
public virtual int ResourceId {get;set;}
}
public class Permission
{
public virtual int PermissionId {get;set;}
}
Here is my default override class for group
public class GroupMappingOverride : IAutoMappingOverride<Group>
{
public void Override(AutoMapping<Group> mapping)
{
mapping.HasManyToMany(x => x.ResourcePermissions)
.Table("GroupResourcePermission")
.AsEntityMap("ResourceID", "PermissionID");
}
}
When I execute,it is creating a table GroupResourcePermission with columns [GroupID,ResourceID,PermissionID] with (GroupID and ResourceID) as combined primary key.
For my purpose, it won't work. I want to store data as [1,1,1], [1,1,2] but the current structure doesn't allow me to store in the format. I found somebody was recommending
IList<Tuple<Resource,Permission>>
but couldn't made it work.
Experts, please provide suggestions.