日期:2014-05-17  浏览次数:20546 次

asp.net里有没有像winform一样的控件savefiledialog


asp.net里有没有像winform一样的控件savefiledialog
用<input file 只是弹出打开文件,并不能自己想输入一个新的文件名,fileupload也是一查询 


/// <summary>
        /// 导出excel数据的主要方法
        /// </summary>
        /// <param name="FileType">导出数据格式,可以为excel(如ABC.xls),可以为word(如ABC.doc) </param>
        /// <param name="FileName">导出数据文件名称</param>
        /// <param name="gs">数据源 从哪里导出去 一般为Gridview</param>
        public static void Export(string FileType, string FileName, Control gs)
        {}
        导出数据的方法时,最左侧的checkbox也显示不全,而且也只能导出当前gridview的数据,不能把后面页中的所有内容都导出来。
        

------解决方案--------------------
你在服务器端向客户端传送一个文件。

浏览器就会启动下载文件的过程,弹出另存为对话框,让用户选择保存路径。
------解决方案--------------------
比如:
Page_Load()
{
Response.Clear();
Response.ContentType = "application/CSV";
Response.AddHeader("content-disposition", "attachment; filename=\"test.csv\"");
Response.Write("a1,b1\r\na2,b2");
Response.End();
}
------解决方案--------------------
input file只能选择文件

关于导出的话  只能自己慢慢调 
导出的东西不一样 有时候通用的方法不一定能够完全正常的导出
------解决方案--------------------
引用:
这样可是可以,但是在选择了文件后,怎么获取相应的文件名,与一个方法得到的表数据(集合),对应起来,即是把表数据写到刚才命名的文件名中。

你在传送文件的时候就定义了数据是什么。
用户只是选择一个保存路径和文件名而已。

难道你从下载软件站下载软件,你选择保存的文件名是windows.exe下载的就是windows,选择office下载的就是office?
------解决方案--------------------
你导出的时候要从数据库取数据,而不是从界面上。