2016-04-11 39 views
2

我試圖編譯這個Json.NET代碼:什麼是Json.NET單聲道程序集引用?

using Newtonsoft.Json; 
... 
MyDesc d = JsonConvert.DeserializeObject<MyDesc>(jsonInput); 
... 
通過單

用這個命令(在Ubuntu):

$ mcs Main.cs -lib:/home/username/JsonNET/Net40/Newtonsoft.Json.dll 

但我得到 「沒有裝配參考」 誤差:

error CS0246: The type or namespace name `Newtonsoft' could not be found. 
Are you missing an assembly reference 

什麼是正確的Json.NET單聲道引用?

(-lib選項期待權這一點,但它不工作-lib:PATH1[,PATHn] Specifies the location of referenced assemblies

回答

2

單聲道編譯器指令引用其他組件是-r:PATH/TO/ASSEMBLY。您應該嘗試使用當前版本的單聲道。

$ mcs Main.cs -r:/home/username/JsonNET/Net40/Newtonsoft.Json.dll 

參考:http://linux.die.net/man/1/mcs或輸入到你的shell:

$ man mcs 
+0

它編譯!但我不能再運行我的exe文件:System.IO.FileNotFoundException:無法加載文件或程序集'Newtonsoft.Json。不確定它是否相關。謝謝,它編譯。 – AvrDragon

+1

與Windows上的.NET一樣,您需要在可執行文件旁邊有DLL的副本,或者必須使用其中一種機制來告訴單聲道在哪裏可以找到DLL。 – Toxantron

+0

@Toxatron它的工作原理!謝謝 – AvrDragon