Я пытаюсь сделать первый проект фреймворка кода, который состоит из двух классов/таблиц. Один класс представляет виджет. Второй класс/таблица содержит атрибуты этого виджета. т. е. с правой резьбой, с левой резьбой, малая, большая и т. д.
Каждый виджет может иметь 1 или более атрибутов, и каждый атрибут может принадлежать многим виджетам.
Сначала я не понимаю, как это должно быть представлено в коде.
class Widget{
public int Id {get;set;}
public string Name {get;set;}
public ICollection<Attribute> Attributes{get; set;}
}
class Attribute{
public int Id{ get; set;}
public string Name{get; set;}
}
Приведенные выше классы дают мне две таблицы и несколько копий одного и того же атрибута в БД.
В конечном итоге я пытаюсь использовать таблицу атрибутов как своего рода расширяемое перечисление.