:NET/C# GUI portability to Linux

  • Thread starter Thread starter Abra
  • Start date Start date
A

Abra

I need to write a Windows application with GUI, that should be able to
run also on Linux. I have already a .NET application (written in C#)
that uses (among others) Windows.Forms, ADO.NET, and TCP/IP (sockets).
Which is the best way to get it running under Linux ?
I read about Mono, would this be a reliable way ? Is Mono already
"production-ready", or still beta ? Are the .NET parts that I mentioned
above already completely implemented in Mono ? Does anyone has some
practical experience about this ?
On the other hand, I read also about the Qt graphical package, that is
available for Windows and also for Linux. If I choose this way, it would
mean that I have to rewrite my actual Windows application. I would take
this in account, if this would be the most reliable solution. Is Qt also
available for C#, or only for C/C++ ?
Can somebody help me with some advice ? Which way would be better
supported in the future ? Which way would allow easier software
development/test on both platforms ?
I mention that I dont have practical experience with Linux.
Thanks in advance for your help.
Abra
 
Abra said:
I need to write a Windows application with GUI, that should be able to
run also on Linux. I have already a .NET application (written in C#)

I got the same question about a C++ program written in MSVC. I've looked in
google and there seems to be a sort of windows api written for linux by
microsoft. But I don't know if that works for the .NET applications.
 
Hi ,

If you need a good, stable interoperatibility between win & *nix you better
go the web way, that is the best way.

there is no managed interface of Qt AFAIK at least.

cheers,
 
Hi
I need to write a Windows application with GUI, that should be able to
run also on Linux. I have already a .NET application (written in C#)
that uses (among others) Windows.Forms, ADO.NET, and TCP/IP (sockets).
Which is the best way to get it running under Linux ?
I read about Mono, would this be a reliable way ? Is Mono already
"production-ready", or still beta ? Are the .NET parts that I mentioned
above already completely implemented in Mono ? Does anyone has some
practical experience about this ?

Status of ADO.NET in Mono: http://www.mono-project.com/ADO.NET
Status of Windows.Forms in Mono: http://www.mono-project.com/Windows_Forms

and this will get you to the class library with a status on each class:
http://www.go-mono.com/docs/

Neither of these 3 is feature complete, but depending on what classes and
methods you use, you'll be fine. It is production ready, as long as you
don't use any class that's not ready yet.
On the other hand, I read also about the Qt graphical package, that is
available for Windows and also for Linux. If I choose this way, it would
mean that I have to rewrite my actual Windows application. I would take
this in account, if this would be the most reliable solution. Is Qt also
available for C#, or only for C/C++ ?

Qt is native code, not managed. Using QT3 you'd have a stable and trusted
class library, but I'm not sure about IDEs that support it on Windows
(there's bound to be a bunch for Linux).

Personally I find the prospect of running C# on Linux intrigueing and with
Novell behind Mono I'd expect that the platform has a good future, but at
this moment, you cannot rely on every of your used classes to be 100%
complete in Mono.

Regards
Stephan
 
Back
Top