Sto studiando Onion Architeture ma ho qualche dubbio:
Tutti i campioni (github) che ho trovato su internet sono troppo semplici, o sono implementati in DDD (che non ho ancora studiato al momento) quindi non riesco a ottenere un concetto chiaro.
Informazioni su Domain.Services Ho alcuni dubbi:
- Deve definire le implementazioni? Per tutte le interfacce dei servizi dichiarate?
-
Deve definire la logica del dominio, puoi dare un esempio dettagliato? (evitare l'esempio tipico di GetUser ()). Posso immaginare questo servizio come per esempio
public interface IMarketKartService { double AddItemToKart(Kart kart, ShopItem item); double CalculateBill(Kart kart); }
- Questo livello è in grado di utilizzare repository o no?
Più tardi è il livello Application.Services . Come ho letto dovrebbe essere un'API e implementare casi utente che vengono consumati dall'utente (ad esempio da un'app WinForms)
- Ho ragione?
- Questo livello è in grado di utilizzare i repository? (Suppongo che sì, ma per favore chiarire) Quindi repository in cui i livelli sono idonei per l'uso?
Non ho il senso di molti termini DDD, quindi per favore evitali nelle tue spiegazioni.