将附件添加到列表项时,sharepoint错误“值不在预期范围内”

时间:2013-09-22 09:06:06

标签: sharepoint

我想为一些指定的List项添加附件,我使用函数SPlist.GetItems(SPQuery)来获取目标列表项,因为List中有很多列,为了限制返回的列,我指定了ViewFields如下所示,并设置" ViewFieldsOnly" SPQuery到" true"。

的属性
 query.ViewFields = "<FieldRef Name='Attachments' />";

我正确地获得了列表项目&#34;附件&#34;返回的SPListItem对象的属性不为null。但是,在我使用SPListItem.Attachments.Add()并尝试调用SPListItem.Update()后,出现错误

  

&#34;价值不在预期范围内&#34;发生。

在调查此问题后,我发现如果&#34; ViewFieldsOnly&#34; SPQuery的属性设置为&#34; false&#34;,该错误不会发生,附件将成功上传。但是这将返回List项的所有列,并使我的程序运行得更慢。

所以我的问题是,是否有强制性的&#34;可能阻止附件附加到列表项的列?

1 个答案:

答案 0 :(得分:2)

我遇到了同样的错误,但我猜测是因为udpate需要更多的字段 我找到了blog并同意这一点。

因此,在更新的情况下,将ViewFieldsOnly保留为默认值(false)是唯一的选择。