2016-12-28 105 views
2

我在下面的鏈接看到動態: Can execute Code Dynamically in monotouch?在android系統xamarin

,這是不可能的IOS xamarin使用動態。怎麼樣在Andoid xamarin?

我試着做到以下幾點:

  dynamic MyDynamic = new System.Dynamic.ExpandoObject(); 
      MyDynamic.A = "A"; 
      MyDynamic.B = "B"; 

然而,當我想訪問MyDinamic.A,它說,未知成員:A.

是否有人可以幫忙嗎?謝謝。

編輯:我還添加了Microsoft.Csharp DLL的參考解決方案按照截圖:

enter image description here

+0

我以前在android系統方面對通用變量執行按位運算,動態的 - 它似乎正常工作。也許它是不完全支持的ExpandoObject?我假設錯誤發生在運行時? – Marwie

回答

2

我不知道哪個IDE您使用了用於開發xamarin Android應用,在我身邊,我用VS2015,且誤差

缺少的編譯器所需的成員 'Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo.Create'

這是因爲在項目中使用動態關鍵字時。該程序集包含C#運行庫。爲了解決這個問題,我們需要在我們的項目中添加引用Microsoft.CSharp庫(Microsoft.CSharp.dll):

enter image description here

添加此引用後,你的代碼在我身邊運行良好。

但我不確定Xamarin.Android是否會限制動態對象的使用,通過我在xamarin官方文檔中沒有找到任何限制。有關動態對象的詳細信息,您可以參考:

System.Dynamic.DynamicObject Class

System.Dynamic.ExpandoObject Class