2009-05-20 10 views
14

Kann eine .net-Anwendung in einer Linux-Umgebung ausgeführt werden? Wenn ja, wie? Funktionieren alle Komponenten von .net Framework ordnungsgemäß auf Linux?Wie wird die .net-Anwendung in einer Linux-Umgebung ausgeführt?

+2

Dies ist ein Duplikat http://stackoverflow.com/questions/168170/do-net-applications-run-on-linux. Die Antwort ist im Allgemeinen ja, aber die Bibliotheken neigen dazu, zu verzögern. –

+0

Wie können wir auf Mono laufen? – SANDEEP

+0

http://en.wikipedia.org/wiki/DotGNU –

Antwort

15

Bitte sehen Running .Net applications on Linux with Mono:

Stellen Sie sich das Schicksal Ihrer Firma Pausen auf Ihrem Abschluss Ihres neuen Linux Projekt pünktlich. Sie haben ein Crack-Team von erstklassigen Entwicklern, aber sie sind alle .Net-Programmierer. Was machst du gehen zu tun? Gib zu, dass Windows besser ist als Linux? Schrei? Zurücktreten? Nein, du wirst Mono installieren und die Welt speichern!

5

Während es Alternativen gibt (glaube ich), Mono ist wahrscheinlich, was Sie wollen.

Es unterstützt nicht alles, dass .NET unterstützt, aber es gibt eine compatibility tool, die für Sie überprüft wird. (Ich würde die Ergebnisse der Kompatibilitätstool nicht blind vertrauen zu 100% genau zu sein, denn es wird immer ein paar hinterhältigen unbekannt Unverträglichkeiten sein, aber es ist ein sehr guter Start.)

+2

+1 traue nicht Mono (war dort, das getan) –

+2

Was bedeutet "nicht vertrauen"? Mono ist kein Allheilmittel, aber es ist in vielen Fällen eindeutig nützlich. –

+0

@Matthew: Dein Kommentar war wahrscheinlich mehr zu fm als meine Antwort, aber ich meinte, ich würde den Ergebnissen von MoMA 100% nicht vertrauen. Will die Antwort editieren, um das klarer zu machen. –

0

Für den Betrieb einfacher .net Anwendungen Mono ist das Werkzeug Ihrer Wahl! Ich benutzte es für viele Anwendungen und es funktionierte ohne größere Störungen. Ich würde jedoch nicht empfehlen, sich auf Mono zu entwickeln. Einige Leute in meiner Klasse versuchten C# unter Linux mit Mono zu schreiben und scheiterten schrecklich.

Wenn Sie einfache Dinge tun, funktioniert es gut, aber wenn Sie zu den fortgeschritteneren Sachen wie mit NHibernate oder so etwas gehen, kann es Ihnen scheitern. Und Sie werden das Beste an .net - der Entwicklungsumgebung verpassen und dass alles zusammenarbeitet, weil alles von Microsoft bereitgestellt wird.

1

Es gibt auch MainSoft, die Sie auf J2EE-Umgebung unter Linux ausführen können. Es kompiliert im Grunde die .NET-Quelle in Java-Bytecode.

0

Eine neue Antwort auf eine alte Frage, da sich die Technologie verbessert. Sie können auch Ihre App als dotnet-Core-Anwendung ausführen. Der gleiche Code funktioniert nativ unter Mac von Windows und Linx herunterladen Dotnet Laufzeit für Ihr Betriebssystem und auf einer Konsole Typ Dotnet. \ Yourapp.dll

0

Eine aktualisierte Antwort für mit dem aktuellen Stand der Mono Project in Linux.

mono repos exist for:

Ubuntu 
Debian 
Raspbian 
CentOS 
Fedora 
Docker 

Die Anweisungen vorschlagen mono-complete Installation - auf Centos musste ich auch mono-basic für VB.NET installieren zu arbeiten. Das gegenwärtige Niveau der Unterstützung für VB.NET ist:

default runtime: v4.0.30319 

, die gut genug ist, einen VB zu laufen.NETXML-Client, der eine 3.5 Laufzeit benötigt:

enter image description here

Verwandte Themen