在C#中编写跨平台应用程序时,有哪些好的经验法则?

时间:2010-01-19 10:09:48

标签: c# .net cross-platform

我还不需要在C#中编写任何跨平台的应用程序。但是,每当我开始使用路径等时,我总是想知道如果我需要交叉编译到Mono,我应该做些什么才能让我的生活更轻松。

我理解GUI可能是一个问题。如果可能的话,我想在我正常的Windows编码中尝试使用良好的跨平台实践。

是否需要注意任何ADO问题?

人们遇到了哪些问题以及如何解决这些问题?

3 个答案:

答案 0 :(得分:4)

编写后,通过MOMA运行所有内容。它将为您识别任何与平台无关或未在Mono运行时中实现的构造。

另外用MSBuild和mono .net编译器编译。

使用Path.Combine和Environment.NewLine是我的头脑中的一对。

避免仅构建没有linux / unix模拟的Windows(WMI等)。

答案 1 :(得分:1)

Path.Combine浮现在脑海中。

Guidelines:Application_Portability可能有用

答案 2 :(得分:1)

如果您在使用Gtk#的Windows环境中使用Mono创建应用程序,那么它应该在所有平台上运行,因为它不会使用Mono下不可用的任何.NET库,也不会使用它任何Windows不支持的Mono / Gtk#库。

如果您是Visual Studio用户,请查看Mono Tools for VS软件包。