Как структурировать классы сущностей со следующими отношениями в SQL - PullRequest
0 голосов
/ 29 марта 2020

У меня есть 3 таблицы со следующими отношениями в базе данных SQLite;

A имеет много B имеет много C

Каков наилучший способ структурировать эти таблицы как классы сущностей в C#?

Вот два возможных решения, которые я придумала:

1.)

class A{
    string id;
    List<B>;
}

class B{
    string id;
    List<C>;
}
class C{
    string id;
}

Однако мне не нравится это решение из-за вложенного цикла, необходимого для доступа к C из A например.

2.)

class A{
    string id;
}
class B{
    string id;
    A();
}
class C{
    string id;
    B();
}

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

Поэтому я спрашиваю, есть ли лучшее, более чистое решение для этой проблемы?

Большое спасибо заранее.

Ответы [ 2 ]

1 голос
/ 29 марта 2020

Вы делаете оба:

public class A
{
    public string id { get; set; }
    public ICollection<B> bs { get; set; }
}

public class B
{
    public string id { get; set; }
    public ICollection<C> cs { get; set; }
    public A a { get; set; }
}

public class C
{
    public string id { get; set; }
    public B b { get; set; }
}
0 голосов
/ 29 марта 2020

Вы можете быть организованы таким образом.

Class A{
int a;
List<B> bList;
}
Class B{
int b;
List<C> cList;
A a;
}
Class C{
int c;
B b;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...