首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >选择目录ASP.NET MVC-5

选择目录ASP.NET MVC-5
EN

Stack Overflow用户
提问于 2014-03-10 16:29:31
回答 2查看 1.6K关注 0票数 0

我的部分要求是,用户需要能够导出HTML表(通过控制器填充)以获得excel。我可以创建一个.csv并导出它。然而,我需要能够让他们选择一个目录。

HTML5回答

代码语言:javascript
复制
   <input type="file"> 

但是,这不允许您选择一个目录,只有一个特定的文件。

JavaScript

无论我读到什么地方,这都是一个很大的安全威胁。虽然有一些黑客,但我真的不想用它。

当您命中函数时,我尝试从控制器调用FolderBrowserDialog,但缺少程序集引用,无法找到正确的引用。

我的问题:在ASP.NET MVC5项目中,如果您必须让用户选择一个目录玩具,文件将被导出到哪里?HTML5,JavaScript/JQuery,C#对我来说并不重要。没有安全威胁!

谢谢各位

EN

回答 2

Stack Overflow用户

发布于 2014-03-10 16:37:57

生成文件时,您只需将“内容处理”标题设置为“附件”即可。这将导致普通浏览器保存对话框弹出,他们可以导航和保存它的任何地方。

所以在你的ActionMethod里,我假设你在做这样的事情:.创建csv ..。返回文件(csvData,"text/csv");

该方法具有接受默认文件名的重载。如果您设置了文件名,它将自动为您添加内容配置头,并使文件被下载而不是打开。

返回文件(csvData,"text/csv","somefile.csv");

票数 0
EN

Stack Overflow用户

发布于 2014-03-10 16:38:08

首先,当您说“选择要导出文件的目录”时,您是在说客户端还是服务器端?如果将其作为下载推送给用户,则无法控制任何内容:存储在何处,甚至命名为什么。

如果你说的是服务器端,那么你可以用两种方式之一来处理它。您可以只使用目录选项填充选择列表,然后使用该列表在submit上构建路径。或者,您可以选择更复杂的方法,尝试创建一个界面来浏览服务器的文件系统。这里没有内置的东西可以帮助您;您必须自己创建它,或者找到第三方工具来帮助您。基本上,您只需使用I/O工具读取目录列表,并以树样式层次结构将其呈现给用户。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22305839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档