Reflection/Linq:在vb.net中查找另一个类内部的类



我的代码中有下一个类:

Public Class MyClass
    Public Class MyDictionary 
        Public Shared Property something As String = "xxxxx"
        ...
    End Class
    Public Property dbId As Integer 
    Public Property dbDescription As String
    Public Property Activate As Boolean
    ...

End Class

我正在尝试使用Linq查找MyDictionary类的propertyInfo。

我试着用

Dim propertyInfo = typeDest.GetProperty("MyDictionary", BindingFlags.IgnoreCase Or BindingFlags.Public Or BindingFlags.Instance)

但是什么也没还给我。

有可能做到吗?

MyDictionary不是属性。这是一门课。用GetProperty找不到它。

你必须这样做:

Dim myDictionaryType As Type = _
    GetType([MyClass]) _
        .Assembly _
        .GetTypes() _
        .Where(Function(x) x.FullName.StartsWith(GetType([MyClass]).FullName)) _
        .Where(Function(x) x.Name = "MyDictionary")
        .FirstOrDefault()

最新更新