0

我在 MVC 项目中使用文件上传控件。

 <input type="file" name="file" id="Ids2" style="float:right"/>

当我尝试将文件 (TestDocument.txt) 保存在数据库中时出现以下错误。假设我点击上传按钮,然后浏览器到位置 - “c:\TestDocument.txt” - 并尝试上传它,我得到这个错误..

找不到文件“C:\Program Files (x86)\Common Files\Microsoft Shared\DevServer\10.0\TestDocument.txt”。

编辑:(我从输入类型“文件”值传递文件名)

session.Advanced.DatabaseCommands.PutAttachment(id,null, 
                    File.ReadAllBytes(@fileName), optionalMetaData);

即使我从 C:\ 位置选择文本文件,它总是在上面的“C:\Program Files (x86)\Co.....”位置查找文件。如何使它从原始位置获取文件。谢谢您的帮助。

4

1 回答 1

1

您不能只将文件的文件名传递给服务器并期望使用该文件路径打开文件。传递的路径在客户端本地计算机上,但您正试图在服务器上打开文件。

您需要一个表单元素来将实际文件内容发布到服务器。

Phil Haack 有一篇很好的文章,其中包含有关如何使用 MVC 上传文件的信息。

http://haacked.com/archive/2010/07/16/uploading-files-with-aspnetmvc.aspx

于 2012-07-18T22:19:45.947 回答