Sharepoint COMException 0x81020037

研究了很久,ListItem在保存的时候一直在出Sharepoint COMException 0x81020037

根据错误提示,是保存的时候发生冲突导致,苦思冥想,终于解决了,原因如下:

ListItem在打开的时候我将状态从“基础”改变为“受理”,用的是前端js更改的,但页面上还是显示“提出”。

在保存的时候,也许就是这个问题,页面保存的值还是提出,然后保存的时候我做了EventHandle ItemUpdate事件。

所以保存事件一直出错,哪怕我EventHandle 没做任何操作,都是错误的。

这时想到js保存一次,然后后台保存一次,打开同一个ListItem,保存两次导致错误,

搜遍了Bing,得到的答案均不能解决此问题。

后来想到改变原来的方式,我在js保存后,刷新一下页面,这时候就相当于js是没有保存了,因为刷新了嘛。

然后再进行后台保存操作,完美的解决了Sharepoint COMException 0x81020037保存冲突问题。

总结:sharepoint有很多坑,别说国内文献,有些国外的资料也没有解决方式的先例,唯有靠自己摸索,才是解决问题的王道。

记录一下,希望后面看到此文章的爱好者不再受此困扰。

原文地址:https://www.cnblogs.com/olay/p/5016268.html