如何在Linux环境下运行.net应用程序?

时间:2009-05-20 10:28:00

标签: .net linux

是否可以在Linux环境中运行.net应用程序?如果是,那怎么样? .net框架的所有组件都能在Linux上正常运行吗?

6 个答案:

答案 0 :(得分:15)

请参阅Running .Net applications on Linux with Mono

  

想象一下贵公司的命运   在你完成新的Linux上   项目按时完成。你有一支精干的团队   一流的开发者,但他们是   所有.Net程序员。你是做什么的   将要做?承认Windows是   更好的Linux?哭?辞职?没有,   你要安装Mono并保存   世界!

答案 1 :(得分:5)

虽然有其他选择(我相信),Mono可能就是你想要的。

它不支持.NET支持的所有,但有一个compatibility tool会检查你。 (我不会盲目相信兼容性工具的结果是100%准确的,因为总会有一些偷偷摸摸的未知不兼容性,但这是一个非常好的开始。)

答案 2 :(得分:1)

2018 的更新答案,其中包含Mono Project in Linux的当前状态。

mono repos exist for

Ubuntu
Debian
Raspbian
CentOS
Fedora
Docker

说明建议安装mono-complete - 在Centos上我还必须安装mono-basic才能使用VB.NET。目前对VB.NET的支持水平是:

default runtime: v4.0.30319

这足以运行需要XML运行时的 VB.NET 3.5客户端:

enter image description here

答案 3 :(得分:1)

随着技术的进步,旧问题的新答案。 您也可以考虑将您的应用程序作为dotnet核心应用程序运行。 相同的代码将与MAc Windows和linX一起使用 为您的操作系统和控制台类型下载dotnet运行时 Dotnet。\ yourapp.dll

答案 4 :(得分:1)

还有MainSoft允许您在Linux上运行J2EE环境。它基本上将.NET源代码编译为Java字节码。

答案 5 :(得分:0)

对于运行简单的.net应用程序,mono是您选择的工具!我将它用于许多应用程序,它没有出现重大故障。我不会建议开始在Mono上开发。我班上的一些人试图在Linux上使用单声道进行C#,并且非常失败。

当你做简单的事情时,它运作良好,但当你去使用更高级的东西,如使用NHibernate或类似的东西时,它可能会让你失望。而且你会错过关于.net的最好的东西 - 开发环境,并且一切都在一起,因为一切都是由微软提供的。