根据我们的测试,问题(上传失败)似乎是在锁定计时器到期后发生的。文档可以在计时器到期之前多次保存,但是一旦超过锁定时间,如果用户尝试保存 word 文档,则会显示黄色的上传失败栏。
我们已将锁定计时器设置为当前系统时间加上 Word 请求的锁定时间(3600 秒)。
Timeout: Second-3600
Word 正在尝试发出 Lock 并获得 500 错误,结果是:
LOCK http://t430-dev10/TMS_71/Edit_WebDAV/000%20TEST%20ADD.doc HTTP/1.1
并得到 HTTP/1.1 500 Internal server error 的响应:
System.NullReferenceException: Object reference not set to an instance of an object.
at dn.i(IHierarchyItem A_0, DavContextBase A_1)
at dn.ProcessRequest(DavContextBase context, IHierarchyItem item)
at ITHit.WebDAV.Server.DavEngine.Run(DavContextBase context)
X-AspNet-Version: 4.0.30319
X-Engine: IT Hit WebDAV Server .Net v3.7.1780.0
我们还尝试了 v3.9.2111,结果相同。
基于此,我想就锁定计时器到期后如何保存文档提出一些建议。另外,锁可以延长,以便保存将上传文件吗?和/或是否可以修复服务器引擎以允许文件上传?