私は基本的に、ASP.Net コントロールの一部 (例DropDownList
) が使用するロジックの一部を実装しようとしています。これは、ユーザーが指定したプロパティを呼び出すことによって繰り返され、各行が消費される汎用データ ソースを受け入れるために使用されます。
これはVB.Netにあります。例は次のとおりです。
Dim myObject As Object = getUnknownObject()
Dim propertyName As String = getUnknownPropertyNameForObject()
'Now given that myObject is an array of objects which possess the property given by propertyName '
For Each i As Object In myObject
Dim valueOfProperty As String = invokePropertyOfObject(myObject, propertyName)
'Do something with value'
Next i
invokePropertyOfObject
プロパティの値を返す実装を探しています。動的プロパティがループで呼び出されるという事実に注意したいので、この方法でリフレクションを使用するとパフォーマンスの問題が発生する可能性があります。
私がやろうとしていることの理想的な方法を知っている人はいますか? 可能であれば、動的プロパティのルックアップを 1 回だけ実行し、ループ中に繰り返し使用する方法が必要です。オブジェクトは不明ですが、配列内の各オブジェクトは同じタイプであることを念頭に置いて、これを行うことは可能ですか。