У меня есть сторонняя dll. Когда я получаю некоторые данные, я получаю их обратно в следующем формате:
var getData = getSomeData();
var customers = getData.Customers;
customers имеет тип IEnumerable, но содержит несколько записей внутри него. Поэтому внутри клиентов в режиме отладки я вижу это:
[0] "customerName" ("Text")
[1] "customerId" ("Text")
[2] "customerTitle" ("Text")
[3] "customerGender" ("Text")
Развертывание каждого из них дает больше свойств и информации. Чтобы получить значение, я сейчас могу сделать что-то вроде
var customerName = customers
.FirstOrDefault(c => c.Property == "customerName")
.ToString();
Есть ли способ просто проанализировать IEnumerable и добавить customerName, Id, Title, Gender к объекту как свойства с одним значением, кроме использования цикла foreach с объектом и присвоения каждого значения его собственному свойству (что, если в будущем они добавят больше свойств, это означает, что мне придется обновить этот процесс?
Я искал это, но двусмысленность моего вопроса не принесла много результатов в том, чего я пытаюсь достичь, поэтому надеюсь, что у кого-нибудь есть хороший простой пример, которому я могу следовать.Изменить 1
Вот как выглядит IGenericCustomer (выше я изменил его на интерфейс). свойства по аналогичному шаблону, я использовал Property ниже, чтобы сохранить соответствие тому, что использовал выше
public interface IGenericCustomer
{
string Property {get;}
....
....
}
Подробнее здесь: https://stackoverflow.com/questions/790 ... properties