public class FuelType : Entity { public string Type { get; set; } } W poprzednich przykładach klasy modelowe nie dziedziczyły po Entity. Ktoś wie, dlaczego zastosowano tam ten zabieg? W artykule który nadesłałem nie ma żadnego wyjaśnienia.
@vanguard2727: Po to żeby nie powtarzać deklaracji propert takich jak id. Entity jest abstrakcyjną klasą. Nie reprezentuje żadnej tabeli. Ucz się z materiałów M$ najlepiej w języku angielskim.
@1349: Uczę się z ms docs po ang i z polskich materiałów, żeby to lepiej zrozumieć. Pierwszy raz po prostu coś takiego zauważyłem, w ms docs akurat tak nie pokazywali z tym Entity. Z tego co rozumiem to po prostu dziedziczy sobie do każdej klasy pole Id.
@1349: W jaki sposób korzystasz z lazy loading? Wstrzykiwanie do konstruktora, czy słowo kluczowe virtual i metoda OnConfigure? Ten pierwszy sposób jest bardzo zagmatwany
@vanguard2727: Raczej staram się unikać lazy loadingu. Szybko prowadzi do n+1 problemów. Najlepiej robić wyspecjalizowane dtosy oraz korzystać z metody include z dbcontext kiedy chcesz pobrać coś wymaganego dla danej funkcjonalności.
@1349: Tak myślałem, dziekuje za rade. Jeszcze jedno pytanie, masz może jakiś link gdzie jest dobrze wytłumaczony n+1 problem? Jak nie to spoko z czasem może coś znajdę, zawsze warto spytać. Jeszcze raz dzięki.
@grap32: NHibernate widziałem tylko w starych projektach które mają powyżej 10 lat. Ef Core jest standardem. Można jeszcze brać pod uwagę dapper ale to jest mikro orm.
Znalazłem coś takiego:
public class FuelType : Entity
{
public string Type { get; set; }
}
W poprzednich przykładach klasy modelowe nie dziedziczyły po Entity. Ktoś wie, dlaczego zastosowano tam ten zabieg? W artykule który nadesłałem nie ma żadnego wyjaśnienia.
#entityframework #efcore #csharp #naukaprogramowania #pytanie
Uczę się z ms docs po ang i z polskich materiałów, żeby to lepiej zrozumieć. Pierwszy raz po prostu coś takiego zauważyłem, w ms docs akurat tak nie pokazywali z tym Entity. Z tego co rozumiem to po prostu dziedziczy sobie do każdej klasy pole Id.
W jaki sposób korzystasz z lazy loading? Wstrzykiwanie do konstruktora, czy słowo kluczowe virtual i metoda OnConfigure? Ten pierwszy sposób jest bardzo zagmatwany
Tak myślałem, dziekuje za rade. Jeszcze jedno pytanie, masz może jakiś link gdzie jest dobrze wytłumaczony n+1 problem? Jak nie to spoko z czasem może coś znajdę, zawsze warto spytać. Jeszcze raz dzięki.