Отображение беглого и гибернации HasOne? Ссылка? - PullRequest
1 голос
/ 24 января 2011

Не уверен, как я должен отобразить это.У меня есть две таблицы

Неделя с столбцами

Id, SeasionId, WeekStarts, MatchOfTheWeek

Соответствует столбцам

Id, Location, MatchDate, Rounds

мои недели имеют класс типа Match

    public virtual Match MatchOfTheWeek
    {
        get;
        set;
    }

Теперь у меня есть сопоставление для моего Match

    public MatchMapping()
    {
        Id(x => x.Id);
        Map(x => x.Location);
        Map(x => x.Rounds);
        Map(x => x.MatchDate).Nullable();
        HasManyToMany(x => x.Boxers)
            .Table("Boxer_Match")
            .ParentKeyColumn("matchid")
            .ChildKeyColumn("boxerid")
            .AsSet()
            .Cascade.SaveUpdate();
        HasOne(x => x.Result)
            .Cascade.Delete();
    }

и мои отображения на неделе

    public WeekMapping()
    {
        Id(x => x.Id);
        References(x => x.Season);
        HasMany(x => x.Predictions).Cascade.SaveUpdate().Inverse();
        HasOne(x => x.MatchOfTheWeek).ForeignKey("MatchOfTheWeek");
        //References(x => x.MatchOfTheWeek).Nullable();
        HasManyToMany(x => x.Matches)
            .Table("WeekMatch")
            .ParentKeyColumn("WeekID")
            .ChildKeyColumn("MatchId")
            .AsSet()
            .Cascade.All();
        Map(x => x.WeekStarts);
    }

В основном, как показано на этой неделе, там есть ошибки.Если я поменяю HasOne, чтобы заменить его закомментированной строкой, которая является ссылкой.тогда это не ошибка, но возвращает ноль

Что я здесь сделал неправильно?

1 Ответ

3 голосов
/ 24 января 2011

Я думаю, вы, вероятно, захотите использовать:

References(x => x.MatchOfTheWeek).Nullable().Column("MatchOfTheWeek");

Исправьте меня, если я ошибаюсь, но я думаю, что он будет пытаться использовать столбец MatchOfTheWeek_id, используя соглашения по умолчанию.

...