Чтение {Object} строковых данных из списка <object> - PullRequest
1 голос
/ 08 марта 2012

У меня есть тип списка ac # с несколькими объектами внутри.

Структура будет

> -List<object>
> --[0] object{object[]}
> ---[0] = object {string}
> ---[1] = object {string}
> ---[2] = object {string}
> --[1] object{object[]}
> ---[0] = object {string}
> ---[1] = object {string}
> ---[2] = object {string}

Я не могу понять, как извлечь содержимое строк объекта в каждом массиве.Без сомнения, ошибка новичка.

Кто-нибудь может дать мне указатель, пожалуйста?

Ответы [ 3 ]

3 голосов
/ 08 марта 2012

Похоже, что List<object> действительно содержит только object[], где элементы string.Попробуйте следующее

List<object> source = ...;
List<string> destination = new List<string>();
foreach (var obj in source) {
  var array = (object[])obj;
  foreach (var str in array) {
    destination.Add((string)str);
  }
}

Если LINQ доступен, вы можете сделать следующее

List<string> destination = source
  .SelectMany(x => ((object[])x).Cast<string>())
  .ToList();
0 голосов
/ 08 марта 2012

Похоже, вам действительно нужно использовать List<String[]>.

0 голосов
/ 08 марта 2012
foreach (Object[] record in someList) {
  foreach(Object item in record) {
    Console.WriteLine(item.ToString();
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...