如果有人使用mono项目在Linux上运行C#Code的优势和局限性,请告诉我你的想法......
答案 0 :(得分:10)
有一个巨大的优势 - 它有效。您可以在Linux(以及其他平台,包括Windows)上使用C#,开发和运行。
缺点是事情并不总是像在MS的.NET实现中那样工作,并且有些功能根本没有实现,例如WPF。
答案 1 :(得分:4)
<强>优点强>
<强>限制强>
答案 2 :(得分:3)
我在C#中开发了一些应用程序,并尝试通过Mono在Linux上运行一些应用程序。让控制台应用程序运行非常简单。大多数情况下,在Mono下运行这些类型的应用程序不需要进行代码更改。但是,GUI应用程序总是比较棘手。您应该知道的第一件事是您的用户界面不会与用户的主题融为一体。假设您使用的是Microsoft的System.Windows.Forms,应用程序将始终看起来像Windows 98应用程序。
但是,如果您计划仅在Linux上编写和运行应用程序,那么您可以使用Mono的Gtk#来构建用户界面。这与Linux桌面集成得比System.Windows.Forms好得多。 This page给出了不同GUI工具包,它们的优点和缺点的完美概述。
如果你坚持使用GUI工具包的System.Windows.Forms来在Windows和Linux上运行你的应用程序,请记住,即使Mono支持C#4.0,你最好还是要限制自己只使用C#2.0 ,因为3.0及以上的某些功能未在Linux上实现或无法正常工作。