Sto lavorando su un progetto non-MVC di grandi dimensioni che utilizza Entity Framework per l'accesso al database. Questo è un nuovo progetto, quindi abbiamo una vasta area per lo sviluppo.
Il problema concettuale che sto incontrando è come modellare il livello appena sopra i Modelli EF.
A livello di database ho una tabella Customer
, Order
e Item
, quindi c'è un modello per ciascuno.
Ora ho bisogno di descrivere ciò che il Cliente può fare . Ad esempio, in definitiva, voglio dire qualcosa del tipo:
Order newOrder = customerObject.CreateOrder(itemList);
Dove vive il metodo CreateOrder?
Il mio budello mi dice che c'è una sottoclasse del modello Customer
che ha i metodi necessari al Cliente. Con un'interfaccia a quella classe in primo piano per mantenere basse le interdipendenze tra i moduli.
Ma sembra troppo facile per essere il modo corretto.
Alcune domande correlate che ho trovato, ma che non sono esattamente applicabili sono: