EF Code-First и вложенные множества

Я хотел бы создать модель вложенного набора внутри моей базы данных. Однако у меня есть проблема, потому что я не знаю, как начать реализацию, используя Entity Framework Code-First.

Допустим, у меня есть такой класс:

public class Category
{
    public long Id { get; set; }
    public string Name { get; set; }
    public virtual ICollection<Category> SubCategories { get; set; }

    // public int left { get; set; }
    // public int right { get; set; }
}

В моей модели мне нужна коллекция подкатегорий, как сейчас. Однако я хотел бы реализовать автоматическое (неявное) обновление левого и правого свойств при добавлении / удалении подкатегорий в / из коллекции подкатегорий.

Является ли это возможным?

Спасибо за любой ответ заранее!

Лучший!

1 ответ

Вложенные множества и графы объектов - это две совершенно разные модели. Вы не должны хранить их обоих в одном типе; что нарушает ПСП.

Вместо этого положите Left а также Right в вашем POCO с первым кодом загрузите, а затем спроецируйте / скопируйте его на объекты другого типа (которые не являются объектами) с помощью схемы графа.

Другие вопросы по тегам