Like, if I write a program on windows using C# and the .NET framework, then drop the code on a Linux machine running mono, will it run exactly the same? Or would I have to rewrite it to work with Mono's libraries?
will it run exactly the same? Or would I have to rewrite it to work with Mono's libraries?
This really depends on what your program does, and how it's written.
If you use pure C# and core .NET framework features that are supported on Mono, they will "just work", with no changes. However, if you use unsupported features (ie: any 3rd party libs built around native interop, or WPF, etc), they will not work.
It's a very good idea to run the Mono Migration Analyzer regularly on your assemblies as you develop them. This will tell you of any incompatibilities.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With