C# EF ExcelHelper 导入导出

    //EF导出示例
    var query = from u in orderQuery
    join pro in dbContext.Project on
    u.projectNo equals pro.projectNo
    join org in dbContext.Org on
    u.orgNo equals org.orgNo into JoinedEmpDept
    from dept in JoinedEmpDept.DefaultIfEmpty()
    select new
    {
        学校名称= pro.projectName,
        所属班级=dept.orgName,
        费用类型=u.orderName,
        学生姓名=u.userName,
        身份证号=u.userNo,
        手机号=u.userPhone,
        订单编号=u.orderNo,
        费用金额=u.orderAmount/100.0,
        支付状态=u.payState==1?"已支付":"未支付",
        支付时间=u.payTime,
        银行流水号=u.ccbOrderId,
        添加时间=u.createTime,
        备注=u.remark        
    };
    string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".xlsx";
    string file = localPath + fileName;
    using (ExcelHelper excelHelper = new ExcelHelper(file))
    {
        var list = query.OrderByDescending(u => u.添加时间).ToList();
        excelHelper.ListToExcel(list,"费用");
        return ReturnNode.ReturnSuccess(fileName);
    }
//EF导出示例2,SQL直接导出
try
{
    var sql = "SELECT * from user ";

   //输出排名
   //sql = string.Format("SELECT @rank :=@rank + 1 AS 排名,A.* FROM ( {0}) A, (SELECT @rank := 0) B;", sql);

    string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".xlsx";
    string file = localPath + fileName;
    using (ExcelHelper excelHelper = new ExcelHelper(file))
    {
        System.Data.Common.DbCommand cmd = dbContext.Database.Connection.CreateCommand();
        cmd.CommandText = sql;
        cmd.CommandType = CommandType.Text;
        //转成sqlcommand正常查询语句。
        MySql.Data.MySqlClient.MySqlDataAdapter da = new MySql.Data.MySqlClient.MySqlDataAdapter();
        da.SelectCommand = cmd as MySql.Data.MySqlClient.MySqlCommand;
        DataTable dt = new DataTable();
        da.Fill(dt);
        excelHelper.DataTableToExcel(dt, "用户表",true);
        return ReturnNode.ReturnSuccess(serverPath + fileName);
    }
}
catch (Exception ex)
{
    return ReturnNode.ReturnError(ex.Message);
}

//导入示例
string file = "C:\\Data\\模板.xlsx";
using (ExcelHelper excelHelper = new ExcelHelper(file))
{
    DataTable dt = excelHelper.ExcelToDataTable("Sheet1", true);

    int num = 0;
    for (int i = 0; i < dt.Rows.Count;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值