我应该使用mono来开发linux应用程序吗

Sya*_*hya 5 c# mono visual-studio-2012

我有多年在微软开发堆栈上开发的经验,主要是 Visual Studio 2012/c#。但是现在,我需要在 linux 上开发应用程序。虽然我知道 C++,但我已经好几年没真正接触到它了。我有几个问题。

  1. 我可以在没有代码(或最少)代码更改的情况下使用单声道开发并为 linux 和 windows 编译二进制文件吗?
  2. 我可以使用 Visual Studio 2012 在 windows 平台上开发,在 windows 平台上为 linux 编译吗?我是否需要使用虚拟机在 windows 平台上为 linux 编译?
  3. 如果你想在windows平台上开发linux应用程序,你如何设置你的开发环境(在windows上开发,为linux和windows编译。我的linux box用于测试是一个单独的机器。)

关于我正在做什么的一些信息。我的项目是关于网络渠道分析。客户端很可能是没有 ui 的廉价工业 linux 盒子。我使用mono/c#来开发客户端。服务器将是使用 vs2012 c# 的 windows 开发。很可能使用 wpf 作为 ui。我计划在 linux(客户端)和 windows(服务器)之间共享网络/通信库。我使用 linux 的主要关注点是节省成本,因为客户端几乎是千台。

谢谢你。