2017-12-08 6 views
0

私は私のクラスのプロパティをループのために、次のループを使用します。クラスのプロパティをループ

For Each prop As PropertyInfo In gData.GetType.GetProperties 
       ...do something 
Next 

これはクラスで私の性質です:

Public Property ID As String 
    Public Property CC As Integer 
    Public Property REP As New Dictionary(Of String, Dictionary(Of String, String)) 
    Public Property DAT As New Dictionary(Of String, Int16()) 
    Public Property MIB As New Dictionary(Of String, ArrayList) 
    Public Property PDF As Byte() 

私は、プロパティを無視します"CC"ですが、プロパティREP、DAT、MIBの内容を調べたいと思います。プロパティPDF私はコンテンツのみをチェックします。

私の問題は、私はどのようにアクセスするかわかりません。 REP。

REPは、ご覧のとおり、辞書です。異なる特性の内容によってのみ、文字列「のRel」

    1. のみの文字列「HH」
    2. 両方の文字列

    :辞書の内容は、次のことができます私はチェックサムを作る。

    どのようにプロパティのキーを取得できますか?プロパティREPのキー "HH"が存在するかどうかを確認するにはどうすればよいですか?

  • +0

    に実際に本当に良い例があるどのようにループスルーし、リフレクションでそれを行うことができますかあなたは...それはジェネリックを使用したり、独自のメソッドを作成する方法を作成行うシンプルかつ簡単にGoogleを行うことができますプロパティを見つけます検索 – MethodMan

    +0

    REPは(辞書として)プロパティです。私はこのプロパティのキーにアクセスしたいだけです。値は関係ありません。 –

    +0

    prop.PropertyType.GetFieldsを試しましたが、成功しませんでした。私はどのようなネット機能を使用する必要があるか分かりません。プロパティ "REP"。 –

    答えて

    1
    if gData.REP.ContainsKey("HH") then 
        'Blah blah 
    End If 
    
    関連する問題