У меня есть вопрос, что я, возможно, задумываюсь на данный момент, но здесь идет ...Fluent NHibernate Architecture Вопрос
У меня есть 2 класса пользователей и групп. У пользователей и групп есть много разных отношений, и я думал, что в группе join group_users я хотел бы иметь свойство IsAuthorized (поскольку некоторые группы являются частными - пользователям потребуется авторизация).
Вы бы рекомендовали создать класс для таблицы соединений, а также таблицу User and Groups? В настоящее время мои классы выглядят так.
public class Groups
{
public Groups()
{
members = new List<Person>();
}
...
public virtual IList<Person> members { get; set; }
}
public class User
{
public User()
{
groups = new Groups()
}
...
public virtual IList<Groups> groups{ get; set; }
}
Моя отображение как следующий в обоих классах (я только показывать один в отображении пользователей, но они очень похожи):
HasManyToMany<Groups>(x => x.Groups)
.WithTableName("GroupMembers")
.WithParentKeyColumn("UserID")
.WithChildKeyColumn("GroupID")
.Cascade.SaveUpdate();
Должен ли я написать класс для соединить таблицу, которая выглядит так?
public class GroupMembers
{
public virtual string GroupID { get; set; }
public virtual string PersonID { get; set; }
public virtual bool WaitingForAccept { get; set; }
}
Я бы очень хотел, чтобы иметь возможность корректировать статус членства в группе, и я предполагаю, что я пытаюсь придумать лучший способ пойти об этом.