我正在将命令行迁移实用程序从 DEV 移至 QA,但遇到了一个奇怪的错误。当然,一切在开发环境下都能完美运行。
这是有问题的代码行:
byte[] fileBytes = sourceItem.File.OpenBinary();
“无法打开文件错误”。内部异常显示 COM HResult 代码为 0x81070211
我已确保我的帐户对我尝试从中提取此文件的库具有所有者权限。我什至让自己成为了农场管理员 - 但我仍然遇到同样的错误。
我发现其他几个人也遇到了同样的错误,但没有解决方案。一篇文章提到通过代码下载文件作为一种解决方法 - 那会是什么样子?
我还发现有些人将此问题与大于 100Kb 的文件联系起来,并且可以通过将程序集放入 GAC 来解决该问题。然而,这对于该应用程序来说是有问题的。
是的,我也尝试过使用所有不同的选项参数。我还尝试了使用 OpenBinaryStream 打开 Stream、获取长度并将数据读入 byte[] 数组的解决方法。结果总是一样的。有些东西不允许我访问该文件以读取字节 - 并且错误消息毫无用处。
预先感谢您提供的任何帮助。
我现在认为问题可能与远程 Blob 存储有关。一些帖子提到,只有当文件大小 > 100kb 时才会出现问题。这恰好是文件从内容数据库移动到文件系统的限制。我认为 DBA 必须在 SQL Server 数据库上启用 FileStreaming 才能解决此问题。我正在等待我们的外勤 DBA 就这个建议采取行动。如果有效的话我会跟进报告。与此同时,还有其他人有在 RBS 文件上使用 OpenBinary 的经验吗?
特雷·卡罗尔
这只是一个有根据的猜测——我没有时间检验我的理论。图书馆需要借书吗?如果是这样,您是否在尝试打开该文件之前检查该文件?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)