我有一个班级ObjectMapper<T>
。 .NET 4.0中是否有任何方法可以判断typeof(T)
是dynamic
?我希望能够在成员方法中确定该类是否已初始化为new ObjectMapper<dynamic>()
与new ObjectMapper<SomeConcreteClass>()
。
答案 0 :(得分:10)
没有名为dynamic
的CLR类型。 C#编译器生成类型为object
的所有动态值,然后调用自定义绑定代码以确定如何处理它们。如果使用dynamic
,则会显示为Object
。
答案 1 :(得分:4)
您可以通过检查实例是否为IDynamicMetaObjectProvider
类型来执行此操作,或者您可以检查该类型是否实现IDynamicMetaObjectProvider
。