千家信息网

ASP.NET WebAPI怎么导出CSV

发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,这篇文章主要介绍"ASP.NET WebAPI怎么导出CSV",在日常操作中,相信很多人在ASP.NET WebAPI怎么导出CSV问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对
千家信息网最后更新 2025年01月18日ASP.NET WebAPI怎么导出CSV

这篇文章主要介绍"ASP.NET WebAPI怎么导出CSV",在日常操作中,相信很多人在ASP.NET WebAPI怎么导出CSV问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"ASP.NET WebAPI怎么导出CSV"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一、JS脚本

window.open("../Ticket/ExportTicket");

二、后台实现代码

[HttpGet]public ActionResult ExportTicket(TicketSearch search){  if (search != null)  {    search.CurrentPage = 1;    search.PageSize = 0;  }  string[] lstTitles = new string[] { "编号", "标题"};  int TotalCount = 0;  List lstTicketData = ListTicketEntityToData(search, out TotalCount);  List lstData = new List();  foreach (TicketData itemData in lstTicketData)  {    string[] data = new string[]  {  itemData.Barcode,  itemData.Label,  itemData.SiteId.ToString(),  Helper.Htmlhelper.GetSiteInfo(itemData.SiteId),  itemData.Owner,  string.IsNullOrEmpty(itemData.CardId) ? "" : itemData.CardId,  itemData.StartDate == null ? "" : itemData.StartDate.Value.ToString("yyyy-MM-dd HH:mm"),  itemData.EndDate == null ? "" : itemData.EndDate.Value.ToString("yyyy-MM-dd HH:mm"),  itemData.IsValid.ToString(),  itemData.IsUsed.ToString(),  itemData.CreateTime.ToString("yyyy-MM-dd HH:mm")  };  lstData.Add(data);  }  string ExportFileName = Helper.ImportExport.ExportData(lstTitles, lstData);  return File(new System.IO.FileStream(ExportFileName, System.IO.FileMode.Open), "application/octet-stream", "Ticket" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".csv");}public static string ExportData(string[] lstTitles, List lstData){  try  {    lock (RunningExport)    {      string TemplatePath = AppDomain.CurrentDomain.BaseDirectory + "Export";      string FullFileName = AppDomain.CurrentDomain.BaseDirectory + "Export\\template.csv";      if (Directory.Exists(TemplatePath))      {        if (File.Exists(FullFileName))        File.Delete(FullFileName);      }      else      {        Directory.CreateDirectory(TemplatePath);      }      if (lstTitles.Length <= 0)      {        return null;      }      FileStream fs = new FileStream(FullFileName, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);      StreamWriter sw = new StreamWriter(fs, Encoding.UTF8);      string data = "";      foreach (string itemTitle in lstTitles)      {        data += itemTitle + ",";      }      sw.WriteLine(data.TrimEnd(','));      foreach (string[] itemData in lstData)      {        data = "";        foreach (string itemChildData in itemData)        {          data += itemChildData + ",";        }        sw.WriteLine(data.TrimEnd(','));      }      sw.Close();      fs.Close();      return FullFileName;    }  }  catch (Exception)  {    return null;  }}

到此,关于"ASP.NET WebAPI怎么导出CSV"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0