Отношения и ленивая загрузка в SubSonic 3.0 - PullRequest
6 голосов
/ 12 июля 2009

Я сейчас играю с SubSonic 3.0, и это выглядит очень просто (за исключением того, что мне все еще приходится выбирать между SimpleRepository и ActiveRecord, но это уже другая история).

Однако, поскольку документация немного скудна, я не уверен, поддерживает ли она внешние отношения и отложенную загрузку. По сути, у меня есть объявление класса:

public class Posting {
    [SubSonicPrimaryKey]
    public Guid InternalId { get; set; }
    public string Title { get; set; }
    public string Body { get; set; }
    public DateTime? PostingDate { get; set; }
    public List<Comment> Comments { get; set; }
}

и комментарий класса:

public class Comment
{
    public string Body { get; set; }
}

Как видите, публикация имеет список комментариев. Могу ли я как-то сказать SubSonic, что эти два связаны? То есть я могу автоматически сохранять все комментарии при сохранении сообщения? И что еще более важно, когда я загружаю сообщение, я бы хотел, чтобы список комментариев сначала был пустым, и в какой-то момент произнесите: «Хорошо, пожалуйста, заполните его сейчас».

Я знаю, что могу вручную управлять этим в коде, но мне просто хотелось бы знать, может ли SubSonic сделать это, прежде чем выполнять ручную работу.

Ответы [ 2 ]

4 голосов
/ 12 июля 2009

разреженная? Вы их уже прочитали?

ActiveRecord может определять ваши отношения на основе FK (как и шаблоны Linq) и будет использовать IQueryable. Таким образом, вы получаете лучшее из обоих миров - они есть, если они вам нужны.

Если вы используете Simple Repo - нет - этого не происходит, и все это делается вручную.

3 голосов
/ 26 января 2010

Существует простая опция для управления внешними ключами, даже если вы используете Simple Repo. Проверьте этот пост для деталей.

...