मैं वर्तमान में मेरी कक्षा वस्तु Record
के मूल्यों के सभी के माध्यम से सेट कर रहा हूं।सी # दोहराएं कक्षा गुण
इस कोड है कि मैं इस समय रिकॉर्ड, संपत्ति से संपत्ति को भरने के लिए उपयोग कर रहा हूँ है।
// 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)];
}
क्या आपने प्रतिबिंब की कोशिश की है? http://stackoverflow.com/questions/997747/c-sharp-reflection-accessing-the-fields-of-a-struct – kol
कृपया इस लिंक http://stackoverflow.com/questions/721441/c पर एक नज़र -sharp-how-to-iterate-through-classes-फ़ील्ड-और-सेट-गुण –
क्या आप समझा सकते हैं कि आप कहां और कैसे एक संपत्ति और इंडेक्स के बीच रिश्ते को बनाए रखना चाहते हैं Items array? –