首页 > 解决方案 > 如何在用户单击 asp.net Web 应用程序时打开文件夹

问题描述

每当用户单击网页时,我想打开一个位于我的应用程序根目录下的文件夹对话框。这个想法是对服务器进行 ajax 调用,然后服务器通过 用户显示文件系统浏览器对话框来返回,该对话框显示服务器上文件夹中的所有文件。 我唯一缺少的是服务器端部分。这是服务器端的样子,但它不完整,正在寻找想法......

 public ActionResult OpenFolder()
 {

    var folderContents = Server.MapPath("~/Uploads/")); //The folder to open is named Uploads
    return Content(folderContents);
 }

标签: asp.netajax

解决方案


您将需要呈现您自己的文件浏览器控件。由于安全原因,网页无法打开客户端计算机的文件浏览器对话框。例如,遍历文件服务器端,构建一个带有文件名的 json 字符串,然后将该 json 反馈给浏览器。在客户端代码中,使用 javascript 从返回的 json 中呈现树视图甚至是简单列表。或者,谷歌树视图控件,阅读它们的工作原理,然后将返回的 json 作为数据源插入其中。


推荐阅读