<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      從 Linq Queries 快速生成數(shù)據(jù) HTML, EXCEL, CSV 報(bào)表

      在CodePlex 上經(jīng)??梢园l(fā)現(xiàn)一些好東西, 關(guān)鍵是有沒有時(shí)間去淘寶.

      前幾天就發(fā)現(xiàn)一個(gè), 并且在實(shí)際工作中使用了:

      * DoddleReport

      你有沒有被要求基于來自數(shù)據(jù)庫的數(shù)據(jù),生成一個(gè)報(bào)表? 我們時(shí)不時(shí)會有類似的需求.

      DoddleReport極大的簡化了這方面的工作量.

      首先你需要下載它的Dll 文件, 可以到 codeplex 中得到http://doddlereport.codeplex.com/

      或者直接從這里下載: cnblogs下載地址

      得到的是一樣的文件, 將它解壓到你的一個(gè)asp.net 網(wǎng)站的bin目錄下. 你就可以引用Doddle的類了.

       

      我們來模擬一個(gè)場景(本場景是根據(jù)DoddleReport提供的sample 代碼改編的):

      創(chuàng)建一個(gè)aspx頁面, 加入下面的代碼:

       

      創(chuàng)建一個(gè)Product 類:


      public class Product
      {
      public int Id { get; set; }
      public string Name { get; set; }
      public string Description { get; set; }
      public double Price { get; set; }
      public int OrderCount { get; set; }
      public DateTime LastPurchase { get; set; }
      public int UnitsInStock { get; set; }

      }
       
      隨機(jī)生成1000個(gè)Product的數(shù)據(jù), 方便我們測試結(jié)果:
      public static List<Product> GetAll()
      {
      var rand = new Random();
      return Enumerable.Range(1, 1000)
      .Select(i => new Product
      {
      Id = i,
      Name = "產(chǎn)品 " + i,
      Description =
      "描述...",
      Price = rand.NextDouble() * 100,
      OrderCount = rand.Next(1000),
      LastPurchase = DateTime.Now.AddDays(rand.Next(1000)),
      UnitsInStock = rand.Next(0, 2000)

      })
      .ToList();
      }
       
      下面我們要用到DoddleReport的類:

       

      protected void Page_Load(object sender, EventArgs e)
      {
      // Get the data for the report (any IEnumerable will work)
      var query = GetAll();

      // Create the report and turn our query into a ReportSource
      var report = new Report(query.ToReportSource());

      // Customize the Text Fields
      report.TextFields.Title = "報(bào)告的標(biāo)題";
      report.TextFields.SubTitle = "副標(biāo)題";
      report.TextFields.Footer = "頁腳";
      report.TextFields.Header = string.Format(@"制作時(shí)間: {0}", DateTime.Now);

      // Render hints allow you to pass additional hints to the reports as they are being rendered
      report.RenderHints.BooleanCheckboxes = true;


      // Customize the data fields
      report.DataFields["Id"].Hidden = true;
      report.DataFields["Price"].DataFormatString = "{0:c}";
      report.DataFields["LastPurchase"].DataFormatString = "{0:d}";

      var writer = new HtmlReportWriter();
      writer.WriteReport(report, Response.OutputStream);



      }


      首先用我們的數(shù)據(jù)生成一個(gè)Report的實(shí)例; 然后指定Report的一些屬性, 例如標(biāo)題, 頁眉, 頁腳(很酷,是嗎). 再指定一些列的屬性, 例如隱藏ID, 和給一些列特殊的格式.
      最后調(diào)用ReportWriter將數(shù)據(jù)寫出到頁面.
      下面是生成的截圖:
       

      ScreenShot070

       

      如果你要生成Excel 或者CSV(以逗號或者tab為分隔符的文件)可以簡單的修改ReportWriter后面的代碼為:

       

      string s = Request.PhysicalApplicationPath;

       

      var exWriter = new ExcelReportWriter();
      exWriter.WriteReport(report, System.IO.File.Create(s + "fil7.xls"));

       

      或者

      var deWriter = new DelimitedTextReportWriter();
      deWriter.WriteReport(report, System.IO.File.Create(s + "fil7.csv"));

       

      可以看看效果:

      ScreenShot071

       

      ScreenShot072

       

      希望可以幫助到有這方面需要的朋友們.

      本文來自于喜樂的ASP.NET(Alex Song) 轉(zhuǎn)貼請注明出處

      posted @ 2011-12-13 05:28  擁有的都是恩典  閱讀(4054)  評論(19)    收藏  舉報(bào)
      主站蜘蛛池模板: 亚洲a∨国产av综合av| 成年女人碰碰碰视频播放| 国产成人亚洲日韩欧美| 亚洲高清有码在线观看| 开心五月深深爱天天天操| 亚洲av无码成人精品区一区| 大尺度国产一区二区视频| 日韩午夜福利片段在线观看| 麻豆成人精品国产免费| 亚洲午夜无码久久久久蜜臀av | 国产精品久久久久不卡绿巨人 | 欧美xxxxhd高清| 中文字幕无码av波多野吉衣| 成人亚洲欧美一区二区三区| 人妻夜夜爽天天爽一区| 新久久国产色av免费看| 亚洲国内精品一区二区| 67194熟妇在线观看线路| 亚洲天堂一区二区成人在线| 亚洲av专区一区| 亚洲国产另类久久久精品| 泰来县| 国产在线精品中文字幕| 亚洲欧美在线一区中文字幕| 婷婷丁香五月激情综合| 精品国产av无码一区二区三区 | 日本一区二区精品色超碰| 成av人电影在线观看| 大尺度国产一区二区视频| 国产欧美日韩亚洲一区二区三区| 日本一区二区三区东京热| 久久精品中文字幕少妇| 99e久热只有精品8在线直播| 99热久久这里只有精品| 无码中文字幕av免费放| 久久精品免视看成人国产| 亚洲成a人片在线观看中| 中国亚州女人69内射少妇| 亚洲高清国产拍精品熟女| 亚洲av成人一区二区三区| 国产无遮挡又黄又大又爽|