ok, ive a class and i pass an object as property.
the object that i pass is a List<X>
in my class im trying to access the Object index by reflection BUT I CAN’T!!!
Example:
this class works i just wrote down the part i want to show you and i need help.
class MyClass { private object _recordSet; public object RecordSet { get { return _recordSet; } set { _recordSet = value; } } public string Draw() { system.reflection.Assembly asem = system.reflection.Assembly.getAssembly(_dataSource.GetType()); object instance; instance = asem.CreateInstance(_dataSource.GetType().UnderlyingSystemType.FullName); //to access de Count of my List int recordcount = int.Parse(_dataSource.GetType().GetProperty('Count').GetValue(_dataSource,null)); //i need to do a for(int cont = 0; cont < recordCount; cont++) { _dataSource[cont].Name; // <-- THIS PART IS NOT WORKING!!! because i cant access the Index Directly.... WHAT TO DO!! ??? } } }
If you are using reflection (and hence lots of
object), why not just cast as anIList(non-generic) instead?i.e.
Also – for your original code with
Count, you don’t meanint.Parse– you should just cast (since we expectCountto be anint).