c# bs如何让用户选择保存路径

目的:用户登录后把服务器上的数据库备份到本地
如何让用户可以像用FileUpload那样可以自己选择保存路径
FileUpload只能选择文件,而不能选择文件夹。如何做成那种效果,而且可以只选择到文件夹?

第1个回答  推荐于2016-04-26
你的目的就是将服务器上某个文件下载到本地吧?
最简单的就是将服务器的文件转化成byte流,然后Response.Write响应到客户端就行了。
建议你百度一下"asp.net下载",方法有很多。
用户点击下载或需要下载的时候,浏览器会自动弹出选择保存路径的框的。因为你在设置下载的时候,一般会设置响应类型为attach,浏览器接收到这个信号会自动弹出选择框来,将你的文件保存下来的。追问

不是要下载是要通过backup把数据库备份

追答

目的:用户登录后把服务器上的数据库备份到本地

服务器上的数据库备份到本地,不是先在服务器上备份,然后实现下载到本地吗?
还说你是局域网备份?
能再详细说下你的需求吗?

追问

就是直接备份到本地啊,这个不是关键,关键是怎么让用户能像用上传控件那样点,但是只选择到文件夹。我现在用文本框输入路径就已经实现了,就差把文本框换成打开文件夹了

追答

虽然还是不清楚你的意思,BS,备份到本地不是下载的意思么。。。好吧,我还是给你段打开文件夹的JS好了
function chooseFolder(){
var savePath;
var objSrc=new ActiveXObject("Shell.Application").BrowseForFolder(0,'请选择文件目录:',0,'');
if(objSrc!=null){
savePath=objSrc.Items().Path;
document.getElementById("savePath").value=savePath;
}
}
savePath是你文本框的ID,文本框后面放一个button,点击后调用次JS函数。
但是有两个条件需要在IE中设置。
1.设置当前网站可信任站点.
2.可信任站点安全级别自定义中设置:"对没有标记为安全的ActiveX控件进行初始化和脚本运行"--启用

本回答被提问者采纳

c# bs如何让用户选择保存路径
最简单的就是将服务器的文件转化成byte流,然后Response.Write响应到客户端就行了。建议你百度一下"asp.net下载",方法有很多。用户点击下载或需要下载的时候,浏览器会自动弹出选择保存路径的框的。因为你在设置下载的时候,一般会设置响应类型为attach,浏览器接收到这个信号会自动弹出选择框来,将你的...

.net,c#语言开发BS页面,页面重新加载前或跳转前,连续点击提交按钮,造成...
1.使用Redirect进行重定向,还可以利用js函数location.href和location.replace进行跳转;2.方法一无法避免用户点击”后退“按钮,即浏览器历史记录里面依然有提交的表单记录,使用上述方法跳转后依然可以通过后退回到原来的页面,可以操作http协议的pragma和Cache-Control来控制客户端的缓存,是浏览器不缓存http请求...

c# cs程序与bs程序交互
Cookie是客户端的,如果你的Winform在客户端,那还用浏览器干什么,直接用Winform的应用程序不就行了,这不是多此一举吗?至于交互,可以选择的中间载体可以选择数据库或者WebService。后者相对对数据保护能力强一些,前者能够公开的数据信息更多,减少编码强度。补充:你是不应该去关心客户端浏览器的关闭与...

C#中读取和写入文件的过程,常用哪几类?
\/\/实例化一个保存文件对话框 SaveFileDialog sf = new SaveFileDialog();\/\/设置文件保存类型 sf.Filter = "txt文件|*.txt|所有文件|*.*";\/\/如果用户没有输入扩展名,自动追加后缀 sf.AddExtension = true;\/\/设置标题 sf.Title = "写文件";\/\/如果用户点击了保存按钮 ...

asp.net(C#)中上传大文件的几中常见应用方法
)) { intn=1024; byte[]bs2=newbyte[n]; while(wr.ReadEntityBody(bs2,n)>0) { .. } } 这样就可以解决了大文件的上传问题了。 第二部分:下面我们来介绍如何以文件形式将客户端的一个文件上传到服务器并返回上传文件的一些基本信息。 首先我们定义一个类,用来存储上传的文件的信息(...

c#聊天程序,客户端和服务器,100分,只有这么多
1.要,IP,端口,客户端的用户列表,最后连接时间2.我觉得udp比较好,每次通讯也就是发个信息,用tcp每q一次就开\/关一次连接太损了。3.因为服务端有客户端的列表,因此可以做个复合决策:a。都在同一个本地网,直接通讯b。在不同的本地网,服务器转发c。有一方或双发都在公网,直接通讯\/服务器转发(如果要保存聊天...

如何关闭sqlserver的连接?
database表示所使用的数据库名,这里设置为Sql Server自带的一个示例数据库--Northwind。由于我们希望采用集成的Windows验证方式,所以设置 integrated security为SSPI即可。注意:在使用集成的Windows验证方式时,并不需要我们输入用户名和口令,而是把登录Windows时输入的用户名和口令传递到Sql Server。然后Sql ...

C# winForm怎么把pictureBox显示的图片放到数据库中和从数据库中读取...
string sql = "select 图片 from 数据库表格 where name=用户名";SqlConnection conn = new SqlConnection("data source=.;uid=sa;pwd=***;database=master");SqlCommand cmd = new SqlCommand(sql,conn);conn.Open();byte[] bs = (byte[])r["图片"];MemoryStream ms = new MemoryStream(...

Java适合做bS还是cs啊?我到现在还是不清楚
首先,BS指的是Browser-Server(浏览器-服务器模式),CS指的是Client-Server(客户端-服务器模式)。当然了,java牛的方面当然是BS方面了。虽然,java也可以进行界面的开发,但是和其他的语言比起来就不是一个层次的,它的awt就不用说了,太死板了;swing虽然进行了改进,但还是“java”风格风格的界面,和操作系统看起来总...

如何控制不同的用户只能编辑同一word文档中的自己有权限编辑的区域...
首先打开test.doc文档,选择a区域,添加书签,命名为SOA_a;选择b区域,添加书签,命名为SOA_b。为避免和用户其他书签名称冲突,在SOAOffice里数据区域名称都是以SOA_为前缀的书签名称。保存test.doc。新建EditWord.aspx页面,在Page_Load里编写代码:private void Page_Load(object sender, System....

相似回答