Запрос Sharepoint - значение не попадает в ожидаемый диапазон - PullRequest
0 голосов
/ 21 января 2011

Я пытаюсь получить значение элемента списка, но продолжаю получать ArgumentException - значение не попадает в ожидаемый диапазон.

Мой код выглядит следующим образом:

if (resultList.Count > 0)
            {
                SPListItem result = resultList[0];

                if (result[Column] != null)
                {
                   return result[Column].ToString();
                }
            }

В ближайшем окне я могу убедиться, что столбец существует, и значение можно найти в древовидной структуре объекта.

result.Fields.GetField(Column).Id 

возвращает Guid, но использование его для получения значения поля приводит к другому ArgumentException:

result[result.Fields.GetField(Column).Id]

Ответы [ 2 ]

2 голосов
/ 21 января 2011

Это может произойти, если вы получаете коллекцию элементов списка из представления (list.GetItems (view)) или из запроса с установленным свойством ViewFields, в этом случае возвращаются только поля, включенные в ViewFields.

1 голос
/ 21 января 2011

Вам нужно использовать InternalName поля, чтобы получить его значение из SPListItem

result[result.Fields.GetField(Column).InternalName]
...