Quali sono le migliori pratiche per scrivere codice che può essere compilato in modo incrociato su .NET (Windows) e Mono (Linux)? Sebbene io abbia molta familiarità con .NET, non sono così esperto in Mono e tutti i suoi trucchi. Qualcuno ha visto un buon post sul blog o un best practice su questo, che non sono stato in grado di trovare? Vorrei attenermi alle funzionalità di livello C# 3.0.Best practice per la compilazione incrociata .NET/MONO
Le cose che mi riguardano sono prima di tutto Interop, dato che dovrei chiamare un codice nativo. Successivo sarebbe il modo migliore per gestire spazi dei nomi come Mono.XXX. Dovrei usare un sacco di #if? Isolare il codice in assiemi per piattaforma?
Qualsiasi suggerimento riguardante l'architettura e il design sarebbe molto apprezzato! Se hai avuto esperienza nella compilazione incrociata per Linux/Mono in Visual Studio (qualsiasi versione), sarei interessato anche a questo.
La compilazione incrociata è la frase sbagliata, la si compila una sola volta e quindi la si utilizza su entrambe le piattaforme. – trampster
Non penso sia corretto, dato che Mono ha un numero di Mono. * Namespace, ecc. Forse in un mondo perfetto? –
Bene, ho creato un'app WinForms senza P/Invoke (sembra facile ma è difficile evitare P/Invoke) e ha funzionato perfettamente su Linux, lo stesso.l'assemblaggio exe VS2010 ha prodotto e ha persino utilizzato le nuove funzionalità di .NET 4. –