Свободно: Сопоставление значений таблицы соединения с дочерним элементом в отношении многие ко многим - PullRequest
0 голосов
/ 24 марта 2011

Я пытаюсь отобразить два класса вместе через отношения N: N, и это работает нормально, как есть. Однако в моей таблице соединений есть поле, которое я также хотел бы сопоставить со свойством дочернего объекта, и я не представляю, как это сделать.

По сути, моя карта сделана примерно так:

CompanyMap : ClassMap<Company> {
    public CompanyMap() {
        HasManyToMany<Employee>(x => x.Employees)
            .Table("COMPANY_EMPLOYEE")
            .ParentKeyColumn("COMPANY_ID")
            .ChildKeyColumn("EMPLOYEE_ID")
            ;
    }
}

с моим классом Employee, имеющим свойство .Tenure.

Значение этого срока указано в моей COMPANY_EMPLOYEE таблице соединений со следующей схемой:

COMPANY_ID  |  EMPLOYEE_ID  |  TENURE

Я не знаю, является ли это чем-то смущающе простым, или что-то совершенно невозможным, но если кто-то может направить меня в правильном направлении, я бы очень признателен.

Спасибо!

1 Ответ

2 голосов
/ 24 марта 2011

Вам необходимо создать объект CompanyEmployee в вашей доменной модели и сопоставить оба отношения с ним как один-ко-многим.То есть, у Компании есть коллекция CompanyEmployee, а у Employee есть коллекция CompanyEmployee.

...