rimeiro mapeamento do código do framework da entidade

Tenho duas classes, a classe Group tem um relacionamento de muitos para muitos com a classe User (representando os grupos aos quais um usuário pertence) e, em seguida, o grupo também tem um relacionamento de um para muitos com a classe user (representando o proprietário de um grupo)

Como posso mapear isso?

public class User
{
    public int Id { get; set; }
    public string Avatar { get; set; }
    public string Name { get; set; }
    public string Message { get; set; }

    public virtual ICollection<Group> OwnedGroups { get; set; }
    public virtual ICollection<Group> Groups { get; set; }
}

public class Group
{
    public int Id { get; set; }
    public DateTime CreateDate { get; set; }
    public DateTime ModifyDate { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public bool System { get; set; }
    public int ViewPolicy { get; set; }
    public int JoinPolicy { get; set; }
    public string Avatar { get; set; }
    public int Order { get; set; }
    public int GroupType { get; set; }

    public virtual User Owner { get; set; }
    public virtual ICollection<User> Members { get; set; }
}

tks antecipadamente!

questionAnswers(1)

yourAnswerToTheQuestion