Я хочу отсортировать List(Of MyDynamicObject)
по его свойствам, где MyDynamicObject
является ExpandoObject
. У меня есть имена свойств как строки, поэтому мне нужно использовать какое-то отражение, чтобы передать их.Сортировка списка ExpanoObejct по свойствам с использованием отражения
Скажем, у меня есть список:
MyList = New List(Of Entry)
где Entry
имеет свойство MyProperty_01
.
Теперь я хочу сортировать MyList
объектами недвижимости MyProperty_01
.
В случае статических объектов и не отражение, я хотел бы сделать что-то подобное это:
MyList = MyList.OrderBy(Function(x) x.MyProperty_01).ToList
Теперь, если мне нужно передать имя свойства в виде строки, я могу это сделать:
Dim MyPropertyName As String = "MyProperty_01"
MyList = MyList.OrderBy(Function(x) GetType(Entry).GetProperty(MyPropertyName).GetValue(x)).ToList
где Entry
- ссылка на класс объектов.
Как это сделать с помощью ExpandoObject
? У меня нет ссылки на класс в случае ExpandoObject
.
Так что это больше не работает.
Dim MyPropertyName As String = "MyProperty01"
MyList = MyList.OrderBy(Function(x) GetType().GetProperty(MyPropertyName).GetValue(x)).ToList
решения Clever! Благодаря! –