Ho il mio progetto C # separato in diversi progetti, quindi ognuno diventerà un .dll
dopo.
Ho un progetto per il mio Model
e uno per il mio Data
. Model
è responsabile di Business Logic e rappresentazioni di oggetti di ciò che è nella base dati. Data
è responsabile della creazione delle basi dati e delle operazioni generali ORM. Ho anche un progetto Desktop
che utilizza sia Model
che Data
per interagire con l'utente in un programma Windows WPF.
Data
ha un riferimento a Model
poiché ha bisogno degli oggetti in Model
per creare il DB per l'ORM.
Volevo aggiungere Business Logic nei miei modelli in modo che possano essere aggiunti al DB, ad esempio Person.Add()
aggiungerà l'istanza dell'oggetto persona al DB, ma Quando aggiungo il progetto Data
a Model
progetto come riferimento Visual Studio dice che non può essere fatto poiché questo farà un riferimento circolare (che sono d'accordo).
Come tratti di solito questi casi? C'è un modo per mantenere questo tipo di progetti disaccoppiati o è normale unire Data
e Model
in un progetto?