C# 相当于;ModelMetadata.IsComplexType“;使用反射

C# 相当于;ModelMetadata.IsComplexType“;使用反射,c#,asp.net-mvc,reflection,modelmetadata,C#,Asp.net Mvc,Reflection,Modelmetadata,我试图使用System.Reflection为属性获得与使用元数据相同的结果,特别是IsComplexType属性。我面临的问题是,我找不到MVC框架用于确定属性是否复杂的逻辑。我能找到的复杂类型的唯一特征是它是一个类和一个类。如果不使用ModelMetadataproperties,如何确定(属性)类型是否被视为复杂类型?IsComplexType以以下方式实现: !TypeDescriptor.GetConverter(this.ModelType).CanConvertFrom(typeo

我试图使用
System.Reflection
为属性获得与使用
元数据
相同的结果,特别是
IsComplexType
属性。我面临的问题是,我找不到MVC框架用于确定属性是否复杂的逻辑。我能找到的复杂类型的唯一特征是它是一个类和一个类。如果不使用
ModelMetadata
properties,如何确定(属性)类型是否被视为复杂类型?

IsComplexType以以下方式实现:

!TypeDescriptor.GetConverter(this.ModelType).CanConvertFrom(typeof(string));
所有这些类都不是特定于MVC的,您可以使用它们。只需将
ModelType
替换为要测试的类型