【问题标题】:ASP.NET file browser get filepathASP.NET 文件浏览器获取文件路径
【发布时间】:2011-03-13 20:31:00
【问题描述】:

我在 MVC 中使用 <input type="file" /> 作为文件浏览器对话框。不过,我实际上并不想上传文件,我正在使用它来选择共享驱动器上的模板。我只想在我的操作方法中获取完整的文件路径。然后服务器将处理文件并强制下载到客户端。我已经掌握了HttpPostedFileBase 对象,但我没有看到文件路径属性。这可能吗?或者如果没有,还有哪些其他选择?

【问题讨论】:

    标签: asp.net html file-upload input openfiledialog


    【解决方案1】:

    您可以尝试在输入上添加 onchange javascript 事件并将值写入隐藏字段。然后只需从隐藏字段中读取值。它将包含输入字段的文本框部分中的所有内容。

    <input type="file" name="fileUploader" id="fileUploader" onchange="filePath.value = fileUploader.value;" />
    <input type="hidden" name="filePath" id="filePath" />
    

    我没有用 MVC 看过它,但在 ASP.Net 中,我可以在使用输入字段后从后面的代码中读取该值。

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      您将永远无法从文件上传框中获取文件的完整路径,因为这是一个安全问题。没有浏览器会向您传递完整路径,只有文件名。

      另外,文件上传框会一直上传文件。不幸的是,就像完整路径的安全问题一样,没有办法显示文件对话框并让用户在不启动上传的情况下选择文件。

      【讨论】:

        猜你喜欢
        • 2021-11-28
        • 2020-12-31
        • 2017-06-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-11
        • 1970-01-01
        相关资源
        最近更新 更多