2015-10-24 1 views
-1
Public containerInfoParam As Specialized.NameValueCollection 

offlineContainerID = offlineContainerID.ToString.Substring(4) 
Dim offlineContainerIDArray As Array = offlineContainerID.ToString.Split(";") 

For Each i As String In offlineContainerIDArray 
    containerInfoParam.Add("id", i) 
Next 

Вот как я пытаюсь добавить параметр для каждой записи в массиве, поскольку я не знаю, сколько записей у него будет. Каждый раз, когда я пытаюсь, это дает мне исключение NullReferenceException. Что я делаю не так? Параметр Specialized.NameValueCollectionдля каждого - NullReferenceException

EDIT: То, как массив инициализируется и заполняется записями. offlineContainerID заполняется 30-разрядным идентификатором, начинающимся с «1 -» (Thats, почему подстрока (4) и идентификаторы разделены точкой с запятой (;). Я знаю, что, вероятно, не лучшим было реализовать это, все еще изучая:)

+2

Как инициализируется массив? Загрузите больше кода, и мы сможем помочь. – MCain

+0

Если они не содержат точки с запятой и вы разбиваете точки с запятой, я думаю, вы не получите никаких данных. Разделить на «-» или «1» или любую другую пунктуацию. – MCain

+0

Разделение идентификаторов работает и заполняет массив. просто добавив его в качестве параметра, я получаю исключение – BaL0u

ответ

0

Общественный containerInfoParam Как новый Specialized.NameValueCollection

Это мне потребовалось некоторое время, чтобы увидеть, что нового не было. В общем, попробуйте обработку исключений.