2016-12-28 75 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