Pomoc przy projekcie asp.net mvc4, ninject, EF

0

Próbuję stworzyć projekt z użyciem EF, ninject, asp.net MVC4.
Mam kilka problemów projektowo - programistycznych.

  1. Moja baza danych ma być dla wielu użytkowników. Każdy użytkownik ma mieć kilka własnych tabel. Jak tego dokonać?
  2. Wszystkie klasy, które miałyby być tabelami dziedziczą po jednej klasie "auction" (tabele sprzedane, kupione itd)
    Jak w takim wypadku powinna wyglądać klasa dbcontextu?
    I) Tworzę interfejs, który ma tylko getter o nazwie "auctions"
    II) Tworzę klasę "repozytorium", która ma obiekt dbcontextu, implementuje powyższy interfejs jednak powinna być ona elastyczna (wyjaśnię później)
    III) Tworzę viewmodel który posiada IEnumerable<auction> oraz inne rzeczy potrzebne do między innymi dzielenia na strony itd.
    IV) W kontrolerze (przyjmuje w konstruktorze interfejs z punktu I), a dokładniej w jednej z metod tworzę obiekt viewmodelu, w którym to miałby być przekazywany do view; w zależności od typu aukcji czy to sprzedane czy kupione aukcje miałby być tworzony inny obiekt, jednak nie wiem jak zmusić aby do tego IEnumerable raz przekazywać poprzez interfejs z punktu I context.SoldAuctions a raz context.BidAuctions.
    Próbuję używać ninject przez co binduje do interfejsu z punktu I klasę z punktu II.
    Nie wiem czy w dostateczny sposób jasno to wyjaśniłem i czy jest to możliwe.
    Dziękuję za wszelkie informacje i pozdrawiam.
1
klemensior napisał(a):
  1. Moja baza danych ma być dla wielu użytkowników. Każdy użytkownik ma mieć kilka własnych tabel. Jak tego dokonać?

Najlepiej wcale tego nie osiągać, tylko jeszcze raz usiąść i przemyśleć projekt swojej aplikacji, bo obecny jest po prostu zły. Dlaczego w ogóle pomyślałeś o czymś takim?

1

Popieram przedmówcę!
Wystarczy że do każdego głównego rekordu dodasz pole UserId i już wiesz które dane są czyje.

0
somekind napisał(a):
klemensior napisał(a):
  1. Moja baza danych ma być dla wielu użytkowników. Każdy użytkownik ma mieć kilka własnych tabel. Jak tego dokonać?

Najlepiej wcale tego nie osiągać, tylko jeszcze raz usiąść i przemyśleć projekt swojej aplikacji, bo obecny jest po prostu zły. Dlaczego w ogóle pomyślałeś o czymś takim?

Ok to da się zrobić, widocznie tak jak mówicie źle to przemyślałem - problem małego doświadczenia.
A propozycje dotyczące dalszych pytań?

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