首页 新闻 会员 周边

我用webservice从数据库获得文件后,点击下载保存时怎样才能获得路径?

0
悬赏园豆:20 [待解决问题]
[WebMethod]
        public void download(string filename)
        {
            string conn = @"Data Source=.;Initial Catalog=sql;Integrated Security=True";
            string str = "select FileByte from TestFile where FileName=filename ";
            string path = "c://"+filename;            
            SqlConnection myconn = new SqlConnection(conn);
            SqlDataAdapter sda = new SqlDataAdapter(str, conn);
            DataSet myds = new DataSet();
            myconn.Open();
            sda.Fill(myds);
            myconn.Close();
            Byte[] Files = (Byte[])myds.Tables[0].Rows[0]["FileByte"];

            BinaryWriter bw = new BinaryWriter(File.Open(path, FileMode.OpenOrCreate));
            bw.Write(Files);
            bw.Close();

        }

其中 这一句 string path = "c://"+filename; 是点击下载保存后的文件地址,这种写法是只能把文件默认写进c盘,我想让它获得用户自己选择的保存路径,请问怎么修改?

Mr.sorry的主页 Mr.sorry | 初学一级 | 园豆:92
提问于:2012-08-08 16:08
< >
分享
所有回答(4)
0

你这代码是运行在服务器上的,没法把文件保存到客户端的磁盘上。

Launcher | 园豆:45045 (高人七级) | 2012-08-08 16:16

你是说不能够自定义选择路径还是根本不能保存到磁盘?

我调试过了,可以保存到string path里写的路径上

支持(0) 反对(0) Mr.sorry | 园豆:92 (初学一级) | 2012-08-08 16:19

@Mr.sorry: 你这代码是运行在服务器上的,只能保存在服务器的磁盘上,没法保存在客户端的磁盘上。你能明白我所说的代码运行在服务器上和运行在客户端的区别吗?

支持(0) 反对(0) Launcher | 园豆:45045 (高人七级) | 2012-08-08 16:33

@程序猿.码农: 我是初学者,请问您能能说说怎么修改达到要求吗?

支持(0) 反对(0) Mr.sorry | 园豆:92 (初学一级) | 2012-08-08 17:08

@Mr.sorry: 你得先把你的需求描述清楚。

支持(0) 反对(0) Launcher | 园豆:45045 (高人七级) | 2012-08-08 17:09

@程序猿.码农: 通过用户点击下载按钮将文件保存在自己的磁盘上,这是我做的样式,但是下载只能默认写进c盘

支持(0) 反对(0) Mr.sorry | 园豆:92 (初学一级) | 2012-08-08 19:17

@Mr.sorry: 非要用web service 吗?

支持(0) 反对(0) Launcher | 园豆:45045 (高人七级) | 2012-08-09 09:08

@Mr.sorry: 这是在你本地调试的,如果把程序放到服务器上,你怎么能保存到你本地呢?

支持(0) 反对(0) 程序新青年 | 园豆:841 (小虾三级) | 2012-08-09 14:49
0

你这段代码的结果就是如果别人访问你的网站,最后的结果是文件写到你自己的机器上,而不是访问者的机器

Johnny Yan | 园豆:256 (菜鸟二级) | 2012-08-08 17:23
0

服务器 端不知道,客户端的路径的。

無限遐想 | 园豆:3740 (老鸟四级) | 2012-08-08 19:17
0

看半天没明白你问题描述的意思……你是想通过WebService实现文件下载功能吗?

八戒的师傅 | 园豆:1472 (小虾三级) | 2012-08-08 23:27

支持(0) 反对(0) Mr.sorry | 园豆:92 (初学一级) | 2012-08-09 12:20

@Mr.sorry: 那直接将Webservice的方法返回byte[]不就行了啊?

支持(0) 反对(0) 八戒的师傅 | 园豆:1472 (小虾三级) | 2012-08-09 13:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册