Sto fissando un nuovo progetto, multipiattaforma. Voglio usare l'architettura della cipolla lì. Sarà un gioco semplice (tic tac toe), solo per scopi educativi. Questa app sarà di tipo client-server.
Ora ho letto molto sull'architettura della cipolla, ma non sono ancora sicuro di come gestirlo nel client-server.
Devo creare due repository diversi (1) per server e per client? O dovrei tenerli entrambi in soluzione singola (2) (dal momento che molte classi / interfacce in Core / Domain sono uguali per entrambi)?
- (1) - repository di codice sorgente (su bitbucket o sth come quello)
- (2) - Soluzione Visual Studio
Modifica
 Sarà un'app multipiattaforma (C # via xamarin) con singolo server anche in C #. Comunicazione tramite   WCF   . Il server memorizzerà solo gli account degli utenti, guarderà ogni mossa, salverà la cronologia dei giochi - non è importante, è solo per l'istruzione. 
 Rispondendo a @Kasper, come vedo   OA    nell'app client-server: 
 Ho pensato che avrei potuto condividere più codice possibile in   Core    di Onion - come Entità, Helpers, Logger (?), Interfacce ... Poi, avrò un altro layer - project per   Client API    (Application e Servizi di dominio) e   Server API    (Servizi applicativi: consumo e invio di messaggi da / a client), quindi   Interface    strati. Separato per client e per server. 
 Quindi, soluzione VS singolo, due app, singolo   Core   . So che è tecnicamente possibile - ma è una buona pratica?