public void ImportWKXMD() { try { if (!string.IsNullOrEmpty(Request.Params["content_id"])) { if (!string.IsNullOrEmpty(Request.Params["log_id"])) { int log_id = Convert.ToInt32(Request.Params["log_id"]); _edmContentNewMgr = new EdmContentNewMgr(mySqlConnectionString); DataTable _newDt = new DataTable(); DataTable _dt = _edmContentNewMgr.WKXMD(Convert.ToInt32(Request.Params["content_id"]), log_id); _newDt.Columns.Add("發信狀態", typeof(string)); _newDt.Columns.Add("姓名", typeof(string)); _newDt.Columns.Add("信箱", typeof(string)); _newDt.Columns.Add("信箱編號", typeof(string)); _newDt.Columns.Add("開信次數", typeof(string)); _newDt.Columns.Add("寄信時間", typeof(string)); for (int i = 0; i < _dt.Rows.Count; i++) { #region 轉換dt DataRow newRow = _newDt.NewRow(); newRow[0] = "success"; if (_dt.Rows[i]["name"] == "") { newRow[1] = ""; } else { newRow[1] = _dt.Rows[i]["name"].ToString().Substring(0, 1) + "**"; } if (_dt.Rows[i]["email"] == "") { newRow[2] = ""; } else { newRow[2] = _dt.Rows[i]["email"].ToString().Split('@')[0] + "@***"; } newRow[3] = (_dt.Rows[i]["email_id"]).ToString(); if (_dt.Rows[i]["count"] == "") { newRow[4] = "0"; } else { newRow[4] = Convert.ToInt32(_dt.Rows[i]["count"]); } if (_dt.Rows[i]["send_date"] == "") { newRow[5] = ""; } else { DateTime request_createdate; if (DateTime.TryParse(_dt.Rows[i]["send_date"].ToString(), out request_createdate)) { newRow[5] = Convert.ToDateTime(_dt.Rows[i]["send_date"].ToString()).ToString("yyyy-MM-dd HH:mm:ss"); } else { newRow[5] = ""; } } _newDt.Rows.Add(newRow); #endregion } string fileName = "未開信名單" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls"; MemoryStream ms = ExcelHelperXhf.ExportDT(_newDt, ""); Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName); Response.BinaryWrite(ms.ToArray()); } } } catch (Exception ex) { Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = string.Format("TargetSite:{0},Source:{1},Message:{2}", ex.TargetSite.Name, ex.Source, ex.Message); logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } }