DevExpress asp.net 导出Excel 自动开启迅雷问题,默认保存为aspx页面

目前采取曲线救国策略:

利用MVC .....

<dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" KeyFieldName="FriendLinkID" Theme="Default" EnableTheming="True">
                <Columns>
                    <dx:GridViewDataTextColumn FieldName="FriendLinkID" ReadOnly="True" VisibleIndex="0">
                        <EditFormSettings Visible="False" />
                    </dx:GridViewDataTextColumn>
                    <dx:GridViewDataTextColumn FieldName="LinkName" VisibleIndex="1">
                    </dx:GridViewDataTextColumn>
                    <dx:GridViewDataTextColumn FieldName="LinkSrc" VisibleIndex="2">
                    </dx:GridViewDataTextColumn>
                    <dx:GridViewDataTextColumn FieldName="Contact" VisibleIndex="3">
                    </dx:GridViewDataTextColumn>
                    <dx:GridViewDataDateColumn FieldName="PublishData" VisibleIndex="4">
                    </dx:GridViewDataDateColumn>
                </Columns>
            </dx:ASPxGridView>
            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:Pengbg_DataConnectionString %>"
                SelectCommand="SELECT * FROM [Friendlink]"></asp:SqlDataSource>
            <dx:ASPxGridViewExporter ID="ASPxGridViewExporter1" GridViewID="ASPxGridView1" runat="server"></dx:ASPxGridViewExporter>
            <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
 protected void Button1_Click(object sender, EventArgs e)
        {
            var fileName = new Random().Next().ToString();
            var fullPath = @"C:\" + fileName + ".xls";
            using (var fs = new FileStream(fullPath, FileMode.CreateNew, FileAccess.Write))
            {
                ASPxGridViewExporter1.WriteXls(fs);
            }
            Response.Redirect("Default1?path=" + fullPath);
        }
 public class Default1Controller : Controller
    {
        //
        // GET: /Default1/

        public ActionResult Index(string path)
        {
            String newfileName = DateTime.Now.ToString("yyyyMMddHHmmssff");
            return File(System.IO.File.ReadAllBytes(path), "application/vnd.ms-excel", HttpUtility.UrlEncode(string.Format("{0}.xls", newfileName)));
        }

    }

原理在推测、调试中。。。

时间: 2024-10-08 07:16:20

DevExpress asp.net 导出Excel 自动开启迅雷问题,默认保存为aspx页面的相关文章

[转] Asp.Net 导出 Excel 数据的9种方案

湛刚 de BLOG 原文地址 Asp.Net 导出 Excel 数据的9种方案 简介 Excel 的强大之处在于它不仅仅只能打开Excel格式的文档,它还能打开CSV格式.Tab格式.website table 等多钟格式的文档.它具备自动识别行号,字符,格式化数字等功能,例如:如果你在Excel 单元格中输入数字 "123456789012" 会自动转化为"1.23457E+11". 背景介绍 正因为Excel的强大和易用,大家都喜欢将数据导出为 Excel 备

Asp.net导出Excel乱码的解决方法

通过跟踪Asp.net服务器代码,没有乱码,然而导出Excel到浏览器后,打开时出现乱码. 解决方法是添加编码格式的前缀字节码:Response.BinaryWrite(System.Text.Encoding.Unicode.GetPreamble()); ? 1 2 3 4 5 6 7 8 9 10 11 12 13 Response.Clear(); Response.AddHeader("content-disposition","attachment;filenam

Asp.net导出Excel(HTML输出方法)

主要思路: 实例化Gridview,将值绑定后输出...(用烂了的方法) 贴上核心代码: public static void ExportToExcel(DataTable dataList, string[] fields, string[] headTexts, string title, string TableName) { GridView gvw = new GridView(); int ColCount, i; //如果筛选的字段和对应的列头名称个数相对的情况下只导出指定的字段

ASP.NET导出EXCEL类

最新ASP.NET导出EXCEL类 说明:可以导出ASP.NET页面和DATAGRID(WebControl)数据,可以导出表单头 using System;using System.Data;using System.Text;using System.Web;using System.Web.UI;using System.Diagnostics;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;using Sy

NPOI导出Excel - 自动适应中文宽度(帮助类下载)

前言 做了好几个Excel.Word导出,用了HTTP流导出伪Excel文件.用过Office组件(这东西在生产环境下相当麻烦,各种权限,**). 最后决定使用NPOI组件来导出,好处很多很多了,这里不多说. 这篇文章呢,主要说一下Excel导出的细节以及问题. 我在制作这个Demo的时候使用的环境: Visual Studio 2010.Office 2013 .Framework .NET 3.5 .NPOI 1.2.5(至于为什么没有选最新版 稍后说) 完成后的截图 从浏览器导出的Exce

Asp.net导出Excel续章(自定义合并单元格,非Office组件)

结合上次写的导出Excel方法,这次上头要求我将列头进行一下合并 以前的效果: 改进后的效果: 在上篇文章中写到了Excel的导出方法,这次为了避免在生产环境中使用Office组件,服务器各种权限配置的麻烦,这次就不使用Office组件来生成Excel了. 上篇文章:Asp.net导出Excel(HTML输出) 关键代码如下图: 说道这里,其实主要思路已经很明显了. 在数据绑定结束后,重新绘制表头替换掉原来的表头就行了. TableCell自定义表头的时候是table标签的,很方便. 另外发现了

asp.net 导出excel 中文乱码解决方法 (转)

用我转载的上一篇文章 Asp.net中把DataTable或DataGrid导出为Excel 导出的文档,中文有乱码现象,其实要解决中文乱码很简单,设置一下字符集.如下: // 设置编码和附件格式 curContext.Response.ContentType = "application/vnd.ms-excel"; curContext.Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312&

ASP.NET导出Excel(利用NPOI和EPPlus库,无需安装Office)

网上提供了很多Asp.net中操作Excel的方法,其中大部分是调用微软的Office组件,下面提供三个无须安装Office即可从Asp.net输出Excel的方法. 1 简单方法 //下面代码输出的Excel有三列(姓名.年龄.性别)//列之间用\t隔开StringWriter sw = new StringWriter();sw.WriteLine("姓名\t年龄\t性别"); //Excel表格的列标题 sw.WriteLine("张三\t29\t男"); /

asp.net 导出Excel

分享一个asp.net 导出假Excel代码.优点,不用借助于任何插件比如(NPOI),复制代码,修改grid.DataSource直接导出. 先看导出后的效果图 1 System.Web.UI.WebControls.DataGrid grid = new DataGrid(); 2 grid.CellSpacing = 6; 3 grid.CellPadding = 6; 4 grid.EnableViewState = false; 5 grid.DataSource = tableCar