【问题标题】:Equivalent for "ModelMetadata.IsComplexType" using Reflection等效于使用反射的“ModelMetadata.IsComplexType”
【发布时间】:2014-01-13 23:20:02
【问题描述】:

我正在尝试使用System.Reflection 来获得与使用metadata 相同的属性结果,特别是IsComplexType 属性。我面临的问题是我找不到 MVC 框架用来确定属性是否复杂的逻辑。我能找到的复杂类型的唯一特征是它是一个类和is not a built in type of the .Net framework。在不使用ModelMetadata 属性的情况下,如何确定(属性)类型是否被视为复杂类型?

【问题讨论】:

    标签: c# asp.net-mvc reflection modelmetadata


    【解决方案1】:

    IsComplexType的实现方式如下:

    !TypeDescriptor.GetConverter(this.ModelType).CanConvertFrom(typeof(string));
    

    所有这些类都不是特定于 MVC 的,您可以使用它们。您只需将ModelType 替换为您要测试的类型即可。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-01
      • 1970-01-01
      • 2016-01-27
      • 2012-03-11
      • 2012-03-26
      • 2018-02-21
      • 2016-03-28
      • 1970-01-01
      相关资源
      最近更新 更多