EntityFramweork Contexty - ile powinno być

2017-04-11 21:52
Biały Pomidor
0

Tworze sobie w ramach nauki aplikacje Asp.NET MVC + EntityFramework i tak się zastanawiam czy wszystkie DbSety wrzucać do jednego kontekstu, czy np lepiej podzielic to na rózne contexty.
Np teraz mam

 public class InvoiceDbContext : DbContext
    {
        public DbSet<Header> Headers { get; set; }
        public DbSet<Item> Items { get; set; }
        public DbSet<Customer> Customers { get; set; }
        public DbSet<User> Users{get;set;}
    }

tutaj pytanie czy np Users czyli uzytkownicy aplikacji powinni byc w kontekscie faktury czy w takich przypadkach tworzy sie oddzielny kontekst?

Pozostało 580 znaków

2017-04-12 00:31
0

Jeden kontekst per baza danych.

Pozostało 580 znaków

2017-04-12 01:45
1

Możesz próbować mieć jeden context per bounded context (z DDD), ale nie wiem, czy EF to ogarnie.


"HUMAN BEINGS MAKE LIFE SO INTERESTING. DO YOU KNOW, THAT IN A UNIVERSE SO FULL OF WONDERS, THEY HAVE MANAGED TO INVENT BOREDOM."
edytowany 2x, ostatnio: somekind, 2017-04-12 01:45

Pozostało 580 znaków

2017-04-12 01:56
0

Tak jak napisał @somekind, możesz mieć kilka kontekstów, ale wtedy na pewno pojawią się nowe problemy - transakcje pomiędzy kontekstami, migracje, zapewnienie integralności referencyjnej, współdzielenie typów pomiędzy kontekstami.

Pozostało 580 znaków

2017-04-12 02:01
0
some_ONE napisał(a):

Tak jak napisał @somekind, możesz mieć kilka kontekstów, ale wtedy na pewno pojawią się nowe problemy - transakcje pomiędzy kontekstami, migracje, zapewnienie integralności referencyjnej, współdzielenie typów pomiędzy kontekstami.

Nie no, jeśli masz bounded contexty, to z definicji nie masz transakcji pomiędzy nimi, a integralnością zajmuje się i tak baza.
Mnie bardziej martwi generowanie bazy oraz migracje. Prawdopodobnie potrzeba by jeszcze jednego kontekstu EF na całą bazę.


"HUMAN BEINGS MAKE LIFE SO INTERESTING. DO YOU KNOW, THAT IN A UNIVERSE SO FULL OF WONDERS, THEY HAVE MANAGED TO INVENT BOREDOM."
edytowany 2x, ostatnio: somekind, 2017-04-12 02:01

Pozostało 580 znaków

2017-04-12 09:12
0

A jak mam request, który coś tam robi w systemie i później musi zapisać dane do kilku kontekstów to tego nie obsługuje się transakcją na wiele kontekstów?

Pozostało 580 znaków

2017-04-12 13:55
0

Jeśli masz taki request, to masz źle zdefiniowane bounded contexty.


"HUMAN BEINGS MAKE LIFE SO INTERESTING. DO YOU KNOW, THAT IN A UNIVERSE SO FULL OF WONDERS, THEY HAVE MANAGED TO INVENT BOREDOM."

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0