[檔案輸出]寫個Helper讓NPOI變得更好用 (使用NPOI產出Excel檔案)

NPOI是很老牌的可以讓你產出xls與xlsx的元件

但可能就是因為他太老牌了 許多操作應用上並不便利

通常程式碼中只要用了NPOI 都會看起來落落長很醜

很像.net 以前 大家寫 webform 用 datatable + gridview 在塞資料的那種味道

程式碼中 會有超多創建格子、給格式、給值.......幾百行、千行無限循環

跟現在大家喜歡寫程式習慣並不太符合

所以今天我們試著來包裝NPOI讓他變的更易用些

...繼續閱讀 »

[Reflection]簡單的C# Reflection練習

  • 5344
  • 0
  • C#
  • 2018-04-08

其實Reflection不難  但就是效能比不上hard code好

如果應用的情境不需在意效能 拿來處理一些瑣碎的小功能是蠻好用的

今天我們以假設要輸入一個字串List => 取回 不重覆、並排除空字串、Null、前後空白為例

來寫一個小function

...繼續閱讀 »

[檔案輸出]如何正確將List輸出為Csv (使用ServiceStack)

很多人直覺認為輸出CSV檔是很簡單的事情

不就是一堆由逗號,分隔欄位 再一行一行輸出即可

但若考慮到內容值本身含有, => 剛好與Csv預設用來分隔欄位的符號一樣呢?

或者是內容值本身含有" => 原本期待字串可用" "包覆

當然這些都不難處理 只是處理這種小事很勞民傷財而已

我們可以更優雅的使用ServiceStack來處理

...繼續閱讀 »

[Entity Framework]使用LinqKit在Entity Framework中進行Or串接

當我們使用Entity Framework + Linq時

要做and的運算是很簡單的

目標.Where().Where().Where().....即可

但如果我們要串接Or運算呢?

很可惜Linq本身先天並不支援

但我們可以透過LinqKit的幫助

假設我們想輸出的SQL為

SELECT *
FROM [MySampleTable]
where [NAME] like '%1%' or [NAME] like '%2%' or [NAME] like '%3%'
...繼續閱讀 »