プロパティの 1 つがバイト配列であるオブジェクトがあります。
そのプロパティを というオブジェクトに割り当てますobj1
。そのプロパティを変数に割り当てると{System.Byte[]}
、配列ではなくオブジェクトである型が取得されます。
結果、アクセスできなくなりました。問題は、クラスを作成した人が.GetValue()
メソッドを定義していないため、要素に実際にアクセスできないことですが、デバッガー ウォッチには値が表示されます。
そのオブジェクトに対して定義されている唯一のメソッドはEquals
、GetType
およびToString
(値ではなく値を返しSystem.Byte
ます) です。
私は運なしで次のことを試しました:
var vals = (System.Byte[])obj1 //Returns a {System.Byte[]} object
var vals = (obj1 as System.Byte[]) //Returns a {System.Byte[]} object
var vals = obj1.GetValue //Complains that GetValue is not defined
ウォッチ ウィンドウを使用して配列の値を確認できるのに、要素へのアクセスに問題があることに気が狂いそうです。