У меня естьКак получить тип элемента и членов из списка объектов?
List<object> list = new List<object>();
while (myReader.Read())
{
string arrKablan = myReader["arrK_Title"].ToString();
string arrTotal = myReader["arrTotal"].ToString();
string _title = myReader["MF_Title"].ToString();
string _path = myReader["MF_Path"].ToString();
int _level = Convert.ToInt32(myReader["MF_Level"].ToString());
list.Add(new { title = _title, path = _path, kablanim = arrKablan, total = arrTotal, level = _level });
}
мне нужно выбрать только пункты, где уровень == 1
я попытался
list = list.where(item => item.level == 1);
, но я получаю сообщение об ошибке
'object' does not contain a definition for 'level' and no extension method 'level' accepting a first argument of type 'object' could be found (are you missing a using directive or an assembly reference?)
я знаю, что компилятор может получить тип, чтобы он мог знать, что это «уровень». Как я могу достичь такого выбора, не определяя класс?
Реальный вопрос будет, почему бы вам не * хочу * определить тип? – Crono
Как интерфейс мне поможет? \ – eyalb
Просто отредактировал комментарий. Забудьте о интерфейсах на данный момент. В противном случае мы могли бы зайти слишком далеко, опираясь на рисунок декоратора/обертки. – Crono