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?