我的 MVC 应用程序中有一个操作方法,它FileResult
基于在数据库中保存为 blob 的文件返回一个。根本问题是,对于某些文件类型,请求文件会返回一个空文件,即使我已经验证数据库在Content
列中编码了正确的内容。
然而,真正奇怪的部分是,我很难确定到底是什么原因造成的。以下是一些我无法理解的问题:
下载文本文件,例如
*.txt
并*.csv
返回一个空文件,同时下载例如 PDF 可以正常工作这只发生在我们的 CI 服务器上,我无法在本地工作站上重现它。这些是我能想到的唯一区别:
- 我已经验证了在我的机器上工作的提交,在 CI 服务器上不起作用
- 我尝试将本地工作站连接到 CI 服务器的数据库引擎,但无法重现。换句话说,问题出在代码中,而不是在数据库中(但正如所指出的,在本地工作的相同代码在 CI 服务器上不起作用......)。
- CI 服务器运行 IIS7,而我在 Visual Studio 附带的 IIS Express 上进行本地测试
我该如何解决这个问题?什么可能导致它?