2016-03-15 142 views
0

我打算在Windows 7上用Visual Studio開發和編譯C#/ Mono應用程序,然後在Linux設備上運行此應用程序。我搜索了很多,但有一點仍令我困惑 - 我應該如何設置我的開發環境。我已經安裝在我的筆記本單爲Windows,現在有兩種可能性:爲Mono設計跨平臺開發/ ARM

  1. 創建常規Windows的C#/。NET項目,該項目將使用引用從Windows \ MS.NET框架,使用的MSBuild建設這個項目,複製和運行這個應用程序在Linux上
  2. 創造單目標VS,創建項目,該項目將利用ProgFiles(86)\單聲道\ lib中的引用,建立使用該項目xbuild等

哪種方式,我應該選擇?在我看來,選項#2更可取,但我不明白爲什麼。

回答

0

您的解決方案都不是很好。我會選擇第三個:

  1. 使用MonoDevelop IDE在Linux上開發您的代碼。

有很多原因,這個選項是最好的,比如:

  1. 單爲Windows是次優的:你會發現有些事情不工作(它們在Linux上工作)或事物比平時慢得多。
  2. 單聲道與MS.NET不是100%兼容:有些內容在單聲道中不受支持(例如System.Management)或有太多錯誤被認爲是穩定的(例如WCF)。因此,最好儘快在Mono上進行測試,即在本地進行開發和調試。
  3. MonoDevelop仍然是一個很好的IDE,可以在某些領域與VS競爭(例如Code Completion)。
+0

感謝您的評論,但我忘記說我的目標Linux設備具有ARM架構,所以即使我使用Linux/MonoDevelop開發代碼,它仍然保持跨平臺開發。 – wince

+0

我的建議對於這種情況仍然有效,因爲1)幾乎所有在x86/x64 Mono中可用的所有東西都可以在ARM中使用; 2)MonoDevelop支持遠程調試:https://ebsteblog.wordpress.com/2013/12/04/remote-debugging-with-monodevelop/ – knocte

0

嗯,我在Linux/ARM上使用我自己的單聲道,我在Visual Studio下進行了所有的開發工作,只是爲AnyCPU進行編譯,並且在使用什麼時需要謹慎。

你甚至可以使用MonoDebugger從Visual Studio在目標機器上調試你的程序,它開始正常工作。