【问题标题】:Open directory in file explorer on click单击时在文件资源管理器中打开目录
【发布时间】:2014-12-02 22:14:06
【问题描述】:

我有一个 partialView 列出了文件路径,我需要能够单击该路径并打开包含的文件夹。 该应用程序在本地运行,并且 process.start() 运行良好,直到我们转移到生产服务器,现在需要一个解决方案。 浏览器的安全限制不允许我直接打开包含的文件夹。 有没有办法做到这一点?

当前设置,非常基本的东西

 public ActionResult OpenFile(string path, int someId)
    {
        Process.Start("explorer.exe", Path.GetDirectoryName(path));    

视图如下所示

 @foreach (var file in Model.FileSet)
                {
                    var path = @file.FilePath;
                    <tr>
                        <td><a href='@Url.Action("Action", "Controller", new{path = @path, someId = Model.Id})'> @file.FilePath </a></td>
                        <td>@file.FileType</td>
                        <td>@file.Created</td>
                    </tr>
                }
            </tbody>

感谢任何帮助。

【问题讨论】:

    标签: javascript c# html asp.net-mvc-4


    【解决方案1】:

    代码Process.Start在服务器端完成,如果您检查服务器进程列表,甚至可能有效。

    您只能添加下载功能,但我不知道这是否满足您的要求。

    【讨论】:

    • 感谢@Garath,文件通过单独的进程下载并驻留在客户端计算机上。文件位置存储在数据库中并在应用程序中列出。所以,我正在寻找可以在本地客户端机器上打开文件的东西。
    • 我在发布我的问题之前确实看过它,但我认为有人遇到了这个问题并解决了它。
    • @SalmanSyed 它无法解决,因为在所有浏览器中,因为大多数浏览器只是出于安全原因而阻止它。如果你真的需要这样的功能,唯一的选择是使用 java applet 并使用 javascript 与之通信。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-05
    相关资源
    最近更新 更多