Trovo che ci siano due approcci per condividere le classi di libreria tra le basi di codice CF .NET e .NET.
il codice è identico
Spesso le librerie possono essere identici, in particolare se sono librerie di base che hanno calcoli, o classi di business che sono identici. Per le librerie non-UI questo è spesso il caso poiché .NET CF è principalmente un sottoinsieme di .NET.
In questo caso, è possibile semplicemente creare un progetto di dispositivo e includerlo per il progetto Windows completo. Riceverai un avviso che stai caricando un progetto di dispositivo, ma se non hai usato alcun codice specifico CF, va bene.
il codice è molto simile, ma diverso
In questo caso, ho creare due progetti e quindi due assemblee. Uno di questi assembly lo compongo e include tutti i file utilizzati. Nel secondo aggiungo i file come collegamenti per includerli come riferimenti, quindi tutti gli aggiornamenti sono riflessi. Quindi uso ifdefs per eventuali casi speciali in cui potrebbero differire.
Ciò significa che hai due progetti distinti (uno .NET e uno CF.NET), entrambi con lo stesso file sorgente ma sta cambiando solo il tipo di progetto? Quindi, quando modifichi un progetto, entrambi verranno automaticamente modificati? –
@Arnaud si, esattamente quello. –
Grazie per la spiegazione :), essenzialmente distinguerò entrambi i framework a causa del dispositivo e della gestione della batteria ... (Easier in. NET che CF.NET) –