Как получить доступ к дополнительным данным в отношениях «многие ко многим» в CoolStorage? - PullRequest
2 голосов
/ 16 декабря 2011

Я использую CoolStorage в проекте, где у меня есть некоторые отношения «многие ко многим». Некоторые таблицы соединений содержат дополнительные данные, которые описывают отношения.

Например: Таблица Альфа, Бета и АльфаБета.

Отношения «многие ко многим» между Альфой и Бетой хранятся в АльфаБете. Первичный ключ AlphaBeta - это сочетание клавиш Alpha (AlphaID) и Beta (BetaID), то есть (AlphaID, BetaID).

Но у AlphaBeta также есть некоторые дополнительные данные, такие как 'DisplayOrder INT NOT NULL'

в классах данных у меня есть отношения «многие ко многим», определенные с помощью атрибута [ManyToMany («AlphaBeta», pure = true)], но как мне получить доступ к DisplayOrder для каждого?

Не думаю, что это имеет значение, но это приложение для Windows Phone, использующее SQLite.

1 Ответ

1 голос
/ 16 декабря 2011

Если у вас есть дополнительные поля в таблице ссылок, вы должны установить «pure = false» и добавить объект данных для таблицы ссылок.

Ваш объект данных ссылки может выглядеть следующим образом:

[MapTo("AlphaBeta")]
public abstract class AlphaBeta : CSObject<AlphaBeta>
{
    [ManyToOne]
    public abstract Alpha Aplha { get; set; }

    [ManyToOne]
    public abstract Beta Beta { get; set; }

    public abstract int DisplayOrder { get; set; }
}
...