Do tej pory pracowałem głównie .Net Frameworku i działałem na WCFach + kontrolery MVC w dużym uproszczeniu.
W ramach poznawania .NET Core 2.2 zacząłem sobie tworzyć szkoleniową apkę.
Potrzebuję kilka wskazówek odnośnie zaplanowania architektury takiej aplikacji. Mam jakąś wizję, ale nie wiem do końca jak to pożenić.
Mam na razie coś takiego:
BE.BusinessLogic - logika biznesowa i punkt styku z DB
BE.Data - Encje, DbContext, DbContextAdapter itp
BE.Infrastructure - w .NET Frameworku wrzucałem tu kontrakty, obecnie na razie wrzuciłem
WebApi - tutaj myślę sobie, że będę udostępniał na rzecz frontendu funkcjonalności logiki biznesowej za pomocą kontrolerów WebApi
FE.FamilyApp - ogólnie rzecz biorąc warstwa prezentacji i kontrolery MVC. I tu rodzi się pytanie. W przypadku projektów .NET Framework i WCF kontrolery MVC uderzały do serwisów WCF i udostępniały dane do widoków. Czy w przypadku mojego zamysłu, projektu powinno być podobnie? Tj. kontroler MVC na frontendzie uderza do WebApi backendowego? Będzie to miało ręce i nogi?
Druga kwestia tyczy się DI.
Rozumiem, że w projekcie FE.FamilyApp nie potrzebuję wstrzykiwania zależności gdyż kontroler MVC będzie wywoływał żądania http do web api?
Takiego autofaca instaluję tylko w projekcie WebApi, a wstrzykiwanie zależności w biblitekach klas będzie się odbywało za pomocą kontenera w projekcie WebApi?