是否有.NET OS抽象层使操作系统调用跨平台工作?

时间:2008-09-20 19:23:10

标签: .net mono cross-platform operating-system abstraction

我真的想编写可在任何平台(PC,Linux和Mac)上运行的.NET应用程序。我并不真正关心UI功能,因为这些主要是后台服务。我听说过MONO并且它允许你编写在Mac和Linux上运行的.NET应用程序,但我希望能够编写一个应用程序,当为Windows编译时将作为服务运行,并且当编译为Linux时像UNIX等效的那样运行。我也希望能够将内容存储在注册表中并使其工作。有没有办法像这样编写真正的操作系统无关的代码? ......并且不要说我应该让它在网上运行! :)

2 个答案:

答案 0 :(得分:8)

是的,Mono将Windows服务移植到Linux上,但是您将不得不考虑一种比Registry更好的存储配置设置的方法......例如,使用XML文件将是跨平台的。

您还应该查看mono的wiki,了解如何开发便携式应用程序here

答案 1 :(得分:1)

简答:不。 您可以创建一个可在Windows和Linux上运行的应用程序。 但是有特定于平台的功能,现在Mono无法为您自动“翻译”这些功能。 Windows服务就是一个很好的例子。