私は現在、クラスオブジェクトRecord
のすべての値を設定しています。C#クラスのプロパティを繰り返します
これは現時点でプロパティをプロパティにプロパティを設定するために使用しているコードです。
// Loop through each field in the result set
for (int i = 0; i <= resultItems.Length; i++)
{
Record newRecord = new Record()
{
itemtype = resultItems[i - (fieldCount - 0)],
itemdesc = resultItems[i - (fieldCount - 1)],
prodcode = resultItems[i - (fieldCount - 2)],
proddesc = resultItems[i - (fieldCount - 3)],
curstat = resultItems[i - (fieldCount -4)],
totfree = resultItems[i - (fieldCount -5)],
totphys = resultItems[i - (fieldCount -6)],
pcolgroup = resultItems[i - (fieldCount -7)],
scolgroup = resultItems[i - (fieldCount -8)],
totpo = resultItems[i - (fieldCount - 9)],
totso = resultItems[i - (fieldCount - 10)],
quality = resultItems[i - (fieldCount - 11)],
statusdesc = resultItems[i - (fieldCount - 12)],
groupcode = resultItems[i - (fieldCount - 13)],
qualitydes = resultItems[i - (fieldCount - 14)],
pcoldesc = resultItems[i - (fieldCount - 15)],
scoldesc = resultItems[i - (fieldCount - 16)],
pgroupdesc = resultItems[i - (fieldCount - 17)],
};
}
すべてのプロパティ名をハードコードしなくても、各プロパティを動的に反復処理できますか?そのような
何か:あなたはおそらくこれを実行するためにリフレクションを使用することができ
// Create new Record instance
Record newRecord = new Record();
for (int e = 0; e < propertyCount.Length - 1; e++)
{
newRecord[fieldname] = resultItems[i - (fieldCount - e)];
}
Reflectionを試しましたか? http://stackoverflow.com/questions/997747/c-sharp-reflection-accessing-the-fields-of-a-struct – kol
plsこのリンクを見てくださいhttp://stackoverflow.com/questions/721441/c -sharp-how-it-through-classes-fields-and-set-properties –
resultItems配列のプロパティとインデックスの関係をどこでどのように維持したいのかを説明できますか? –