2016年5月17日 星期二

[LINQ]在LINQPad中使用LinqToExcel(如何引入參考與Namespaces)

LINQPad是一個可以快速檢視LINQ查詢結果的工具(而且是麻雀雖小但五臟俱全)
不像在VS中還需要特別寫顯示的畫面,對於Demo來說相當方便
這篇文章只是從零到在LINQPad使用LinqToExcel的教學文
重點在於「如何引入參考和命名空間」
LINQPad的詳細使用可以找google小姐

LinqToExcel對針對只「讀」的資料而言,比NPOIOpenXML更佳的選擇

LINQPad版本(官網下載的FREE)v4.50.00
LinqToExcel版本(NuGet抓取)v1.10.1 

Step1: 取得LINQPad


不喜歡安裝的,可以點紅框處。至於選LINQPad 5 還是LINQPad 4 則取決於用的.NET Framework版本

下載後,解壓縮在尬意的位置就可以了,然後點「LINQPad.exe」執行
打開LINQPad後,畫面長這個樣子

Step2: LINQPad環境設定

要使用LinqToExcel前,需要將DLLLINQPad認識。(加入參考與命名空間)
點工具列的「Query」→「Query Peoperties
在「Additional Reference」的頁籤中,利用「Browse...」將已經抓好的LinqToExcel相關DLL如圖所需添加(Name欄位才有參考價值)

再換到「Additional Namespace Imports」頁籤中添加命名空間
如果不知道要打什麼或是擔心打錯的,點「Pick from assemblies
右側就會自動產生相應的命名空間,需要的再點「< Add Selected Namespaces」添加
最後,當然就是點OK

Step 3:Query

Language切換到「C# Program 」後 (Language詳細請參閱:LINQPad: The Ultimate .NET Scratchpad)
在輸入區打上下方語法後,Excute(F5)
----------------------------------------------------------------------------------------
void Main()
{
    var fileName=System.IO.Path.Combine(@"E:\備份\2016年度","SOP文件總攬.xlsx");
    var excelFile=new ExcelQueryFactory(fileName);
   
    var excel=excelFile.Worksheet(1); //亦可輸入工作表名 excelFile.Worksheet(“工作表1”)
    foreach (var element in excel)
    {
        element.Dump();
        "".Dump();
    }
}
----------------------------------------------------------------------------------------

然後你就得到它了