Ho diversi progetti che utilizzeranno gli stessi oggetti di business (cliente, ordine) ma i progetti operano in diversi database all'interno dell'organizzazione e vorrei capire l'architettura corretta che dovrei creare per soddisfare tali esigenze.
Ecco un elenco dei diversi tipi di progetti in gioco:
- ASP.NET MVC front end per gestire tutte le azioni generali dell'utente. Questo front-end viene distribuito su un'istanza dedicata per cliente.
- Servizio Windows centralizzato per elaborare file FTP e trasmettere i dati a ogni istanza cliente.
- ASP.NET MVC front end per gestire tutti i clienti e le loro istanze.
Tutti gli oggetti di business (cliente, ordine, ecc.) si trovano in una libreria di classi Core.
Ciascuno dei progetti dovrà utilizzare gli oggetti business in un punto o in un altro, ma collegarsi a un altro database. Il DBContext dovrebbe risiedere nella libreria Core o nel progetto? La migrazione di Entity Framework dovrebbe trovarsi nella stessa posizione di DBContext?