三年中文在线观看免费大全_三年大片免费高清哔哩哔哩_三年在线观看免费大全哔哩_三年大全免费大片三年大片_三年在线观看免费大全_三年大片观看免费大全哔哩哔哩_三年中文在线观看免费高清第4版_三年中文免费视频大全_三年大片大全免费观看大全_三年大片在线观看哔哩哔哩_三年在线观看中文免费观看_三年成都中文在线观看免费版

asp.net導出數(shù)據到(dào)Excel的α∏₩(de)方法(完全無組件(jiàn),不(bù)用(yòng)調用(yòng£♠)Excel.exe) - 新聞資訊 - 雲南(nán)小(xiγ→↕ǎo)程序開(kāi)發|雲南(nán)軟件(jiàn)開(kāi)→ ↓發|雲南(nán)網站(zhàn)建設-雲南維串信息科技有限公司

159-8711-8523

雲南(nán)網建設/小(xiǎo)程序開(kāi)€↓β發/軟件(jiàn)開(kāi)發

知(zhī)識

不(bù)管是(shì)網站(zhàn),軟件δ✔β(jiàn)還(hái)是(shì)小(xiǎo)程序,都(dōu)要(yào)→§↕直接或間(jiān)接能(néng)為(wèi)您産生(shēnε g)價值,我們在追求其視(shì)覺表現(xiàn)®≥§φ的(de)同時(shí),更側重于功能(néng)的(de)便捷,©₹營銷的(de)便利,運營的(de)高(gāo)效,讓網站(zhàn)成為(wèi)營銷工(gōnφ‌β≈g)具,讓軟件(jiàn)能(néng)切實提升企業(yè)內(nèi)部管理(lα↔↔ǐ)水(shuǐ)平和(hé)效率。優秀的(de)程序為(wèi)後期升級提供便捷的(de)支δ÷>₹持!

asp.net導出數(shù)據到(dào)Excel的(de)方法(完全無組件(jià®> n),不(bù)用(yòng)調用(yòng)Excel.exe)

發表時(shí)間(jiān):2020-10-18

發布人(rén):葵宇科(kē)技(jì)

浏覽次數(shù):58

 今天把大(dà)家(jiā)最常用(yòng)的(de)功能(néng) asp.nε§et導出數(shù)據到(dào)Excel, 通(tōng)常的(de)方法 是(shì)組'☆₩件(jiàn)形式的(de),但(dàn)是(shì)A®♣£SP.NET 對(duì)殺死Excel.exe支持不÷ε(bù)夠好(hǎo),特别還(hái)需要(yào)設置dc€£om太麻煩了(le).現(xiàn)在我給大(dà)家(jiā)的(de)是(shì)∞☆¶我做(zuò) 開(kāi)發,已經應用(yòng)到(dào)實際項目的(≤<de)方法,該方法不(bù)用(yòng)調用(yòng)Excel.exe進程.有(≥π±yǒu)不(bù)明(míng)白(bái)的(de),可(kě→ )以在下(xià)面留言,我會(huì)做(zuò)解答(dá)的(de). using¶Ω System;

  using System.Text;
  using System.Data;
  using System.Data.OleDb;
  
  namespace PowerAgent.DBUtility
  {
      /**//// <summary>
      /// DataToExcel 的(de)>∏摘要(yào)說(shuō)明(míng)。
  
      /// DataToExcel 的(d≠∞←✘e)摘要(yào)說(shuō)明(míng)。
      /// </summary>
      public class Data∞↑φToExcel
      {
         ✔;   const string ConnectionStrin® ÷₹g = "Provider=Microsoft.Jet.OLEDB.4.0;Da>≠ta Source={0};Extended Properties=Exc®✔el 8.0;";
  
          public D≥‍ataToExcel()
        ₩₽  {
        β↕←  }
  
          p↔✔‌©ublic string DataTableToExcel(D♠εataTable dt, string excelPa€≤♥∏th)
        &nbs↔☆p; {
          αε>‍    if (dt == null)
          &✔↓Ωnbsp;   {
             λ×™‌     return "Da€"×'taTable不(bù)能(néng)為(wèi)空(kōng)";
        & ₽¥¶nbsp;     }
  
          &nb¶≤>♣sp;   int rows = dt.Rows.Count;
          &nb¶‌÷sp;   int cols = dt.Columns.Count;
       βσ§;       StringBuilde​>ε​r sb;
        &₽ nbsp;     string connString;
  
          &n$₽§bsp;   if (rows == 0)
             €₩ {
             ¶→>™     return "沒有(y∏ λǒu)數(shù)據";
       "✘σ       }
  
          ×↑    sb = new StringBuilder();
       ∏×®       connString = string.Forma>€t(ConnectionString, excelPath);
  
             '©; //生(shēng)成創建表的(de)腳本
        £€αα      sb.Append(©γ®¶"CREATE TABLE ");
       ≠ £∞;       sb.Append(dt.Taφ₹αbleName + " ( ");
  
         ₩¶     for (int i = 0; i < cols; ππ​←i++)
         ¥‌;     {
         λ★≥         if (→↑δ≥i < cols - 1)
          &n€↓bsp;       &nbs€®≤♠p;   sb.Append(string.Format("{0} varc£αεhar,", dt.Columns.ColumnName))♠​ ;
            &nbs&☆ p;     else
       λ≤       &nbs €p;       sb.Append(string.Format(&±™quot;{0} varchar)", dt. §Columns.ColumnName));
          &≥σ≥nbsp;   }
  
            €₹→  using (OleDbConnection objConn = new Oγ♣leDbConnection(connString))
        &nbsγ₽★§p;     {
          §♥σ§        Olβ'eDbCommand objCmd = new OleDbCommand();↕£≥
           σ∞✔;       objCmd.Connection = ob¶♠α¶jConn;
  
        &nb♦≥‍sp;         objγ₽ Cmd.CommandText = sb.ToString();
  
        &★γδnbsp;       &nbs₽γp; try
        &¥​€nbsp;         {
           ‍↓           objConn.Oε‌'pen();
        &nb☆λsp;        ♣ β;     objCmd.ExecuteNonQue± ×★ry();
       ​₩ &;       &nbs© ♥ p;   }
            &←↓αnbsp;     catch ≠♠§π(Exception e)
        ✘Ω        δ✔₩Ω;   {
              ¶α          return "在γα♥Excel中創建表失敗,錯(cuò)誤信息:" + e.Message;
        &n≠±♣×bsp;       &×γ'÷nbsp; }
  
             §÷;     生(shēng)成插入數(shù)據腳本#regiδ∏♥on 生(shēng)成插入數(shù)據腳本
            &nb€ ¶±sp;     sb.Remove(0, sb.Length);
          &>↓±nbsp;       sb.Append(&π±€quot;INSERT INTO ");
          &nbsλδ' p;       sb.Append(dt.TableNam ‍>↑e + " ( ");
  
            &nb→ ™sp;     for (int i = 0; i < cols<φ↑; i++)
        &≠↔nbsp;         {
           &↔       &nbs""p;   if (i < cols - 1)
       ₹ →          ♠>→✘         sb.Append(dt.Co‌≤÷lumns.ColumnName + ",");
        ✔♠       ®×;       else
            &nb₽→λsp;           ↑>£  sb.Append(dt.Columns.Col ​☆•umnName + ") values ("ε&®☆;);
        &nb★★ sp;         }
  
        &ε♦nbsp;         for (≥₽int i = 0; i < cols; i++)
         ☆ ;        γ✘ {
             λ÷¥±         if (i <™ ¶✔; cols - 1)
         ♥ ♣>         &n←↓λ>bsp;       sb.Append( ↔¥♥"@" + dt.Columns.ColumnName + &qu<​ot;,");
        &nbs☆€≠↔p;        ​♣↓     else
              ★‍            •€®♦sb.Append("@" + dt.Columns→€ λ.ColumnName + ")");
          &↑©>↕nbsp;       }
       γ<₽$;           #π♣endregion
  
  
            ¥Ω      //建立插入動作(zuò)的(de)Command
            &nb >sp;     objCmd.CommandText = sb.÷₩ToString();
            &nb<δsp;     OleDbParameterCollection para€​♦m = objCmd.Parameters;
  
             ÷¥©↔     for (int i = ¥≥±≈0; i < cols; i++)
        &n₹€bsp;         {
       ∑& ;            λ €λ   param.Add(new OleDbP<₩αarameter("@" + dt.Columns.ColumnName, Oσ★♣>leDbType.VarChar));
           ∑₹       }
  
            ♦​;       //遍曆DataTable将數(shù)據插入新建的∏☆∏(de)Excel文(wén)件(jiàn)中
         ÷ε       &nbs®₩p; foreach (DataRow row in d•​t.Rows)
          &♥≤nbsp;       {
              €₩≥        for (int i =∏®¶> 0; i < param.Count; i++'₩)
          &nbs∏‌↑p;           {
          &n≠¶₽₩bsp;           & &φnbsp;   param.Value = row;
             ₽♣εφ        ™♠£ }
  
        ÷✔₹₹        &nb§•sp;     objCmd.ExecuteNo₹ ​☆nQuery();
              ±     }
  
            ✘γ       return &q≤→± uot;數(shù)據已成功導入Excel";
          &nbs↕Ωp;   }//end using
          }
      }//end class
  }
 
昆明(míng)軟件(jiàn)開(kāi)發公司中的₹↑(de)佼佼者,緻力定制(zhì)軟件(jiàn)開(kāi)發,昆明(míng)軟件(j∏&€iàn)開(kāi)發請(qǐng)聯系昆明(míng)葵宇科(kē)技(jì)有(yǒu)♥₩π限公司,電(diàn)話(huà):15987118523。

相(xiàng)關案例查看(kàn)更多(duō)

相(xiàng)關閱讀(dú)

三年中文在线观看免费大全_三年大片免费高清哔哩哔哩_三年在线观看免费大全哔哩_三年大全免费大片三年大片_三年在线观看免费大全_三年大片观看免费大全哔哩哔哩_三年中文在线观看免费高清第4版_三年中文免费视频大全_三年大片大全免费观看大全_三年大片在线观看哔哩哔哩_三年在线观看中文免费观看_三年成都中文在线观看免费版