Я хочу добавить вложение к некоторым указанным элементам списка, я использовал функцию SPlist.GetItems (SPQuery), чтобы получить элемент списка цели, так как там много столбцов в списке. Чтобы ограничить возвращаемые столбцы, я определил ViewFields, как показано ниже, и установил для свойства «ViewFieldsOnly
» значение SPQuery
«true».sharepoint error "value не входит в ожидаемый диапазон" при добавлении вложения в элемент списка
query.ViewFields = "<FieldRef Name='Attachments' />";
я правильно получил элемент списка и свойство «Вложения» возвращаемого объекта SPListItem не является нулевым. Однако, после того, как я использовал SPListItem.Attachments.Add()
и пытается вызвать SPListItem.Update()
, ошибка
«Значение не попадает в ожидаемый диапазон» происходит.
Посмотрев в этот вопрос, я обнаружил, что если «ViewFieldsOnly
» свойство SPQuery
установлено значение «false
», эта ошибка не будет происходить, и вложение будет загружено успешно. Но это вернет все столбцы элемента «Список» и заставит мою программу работать медленнее.
Итак, мой вопрос в том, есть ли «обязательный» столбец, который может заблокировать вложения от присоединения к элементу списка?
Возможно, ID необходим? – trigras
Я добавил, что все поля включают «ID» и «Создано» в ViewFields, но не повезло, эта ошибка все еще существует. – cpyd