2011-01-21 1 views
1

У меня есть метод axapta, который возвращает List<Array>. Как я могу преобразовать его на стороне C# и для чего? Можно ли преобразовать его в C# List<ArrayList>? Я вижу пример контейнера:Метод возврата Axapta Список <Array>, как его преобразовать в C#

 ArrayList magazynierzy = new ArrayList(); 
     for (int i = 1; i <= axContainer.Count; i++) 
     { 
      magazynierzy.Add(axContainer.get_Item(1).ToString()); 
     } 
+0

Этот образец выглядит ошибочным, чтобы начать с него различными способами ... –

+0

Как метод AX возвращает «Список '? AX имеет класс «List», но он не совместим с C#. Но вы можете получить доступ к каждому члену списка с помощью вызовов AX. –

ответ

2

Я думаю, что есть некоторые существенные недостатки с этим вопросом, но, принимая его, что у вас есть некоторые внешние обратный процесс в списке вещей, они легко превратить в список объектов. Вы должны определить или идентифицировать класс, который соответствует возвращаемым вами элементам, и создать их список. Так что-то вроде:

 List<string> magazynierzy = new List<string>(); 
     while(axContainer.ReadNext()) 
      magazynierzy.Add(axContainer.get_Item(1).ToString()); 
     return magazynierzy; 

даст вам то, что вам нужно (я не знаю, Axapta, так что я понятия не имею, как перемещаться по списку). Если вам нужны более сложные объекты, объявите для них класс struct, с конструктором, который возьмет объект axContainer, или список параметров, которые вы можете передать в различные записи get_Item (n).