我尝试使用Type obtainedObjectType = ((ObjectHandle)obtainedDynamicObject).Unwrap().GetType();
广泛宣传的方式在运行时确定动态类型,但是为ObjectHandle转换得到了RuntimeBinderException,我不知道为什么。
以下内容也会引发同样的错误;
string myString = "ASF";
dynamic myDynamic = myString;
ObjectHandle dd = (ObjectHandle)myDynamic;
抛出:"无法转换类型'字符串'到' System.Runtime.Remoting.ObjectHandle'
奇怪的是我在上一个工作场所使用过它很好!使用.NET framework 4.5(稍后尝试)。有什么想法吗?
答案 0 :(得分:0)
为什么要采取复杂的方式!?只是做:
Type myDynamicType = myDynamic.GetType();
Console.WriteLine(myDynamicType); // Output is System.String