2010/07/27

[C#] 利用 OleDb 讀取 csv 檔

透過 OleDb 的方式讀取 csv 檔常會遇到型別轉換的問題.
以機關 OID 為例, "2.16.886.101.20003" 會被轉成 "2.1688"
若要解決這問題,就要參考微軟提供的這個設定檔的說明 (http://msdn.microsoft.com/en-us/library/ms709353.aspx).

[ASP.Net] 驗證上傳檔案的副檔名

利用 RegularExpressionValidator 進行檢查:

  1. 僅限上傳PDF檔案(pdf):
    ValidationExpression="^.+\.((p|P)(d|D)(f|F))$"
  2. 僅限上傳WORD檔案(doc,docx):
    ValidationExpression="^.+\.((d|D)(o|O)(c|C))(x|X)?$"
  3. 僅限上傳圖檔(gif,jpg,jpeg,png):
    ValidationExpression =
    "^.+\.(((g|G)(i|I)(f|F))|((j|J)(p|P)(e|E)?(g|G))|((p|P)(n|N)(g|G)))$"

因為 RegularExpressionValidator 控制項, 沒有設定 Regular Expression case-insensitive 的地方, 所以只好用 (e|E) 的方式進行.
雖然看起來有點醜, 不過可以用就好.

[SQL Server 2005] 在查詢中建立小計的資料列並排序

在SQL的應用中, 常見到要查出數量與小計的問題.
以下提供一個以 SQL Server 2005 的 ROW_NUMBER() 與 RANK() , 在一次的查詢中將資料查出數量與小計的方式.
不過還是建議在程式中進行這些作業, 以避免當資料量大時, 查詢效能或擴充性不好的問題.

[CSS] 相容 IE 與 FireFox 的 CSS 寫法

IE 與 FireFox (FF) 在 CSS 的屬性值上有著許多差異, 例如: center與-moz-center
以下是整理網路上的討論並測試出的兩個做法:

[C#] Regular Expression 的 Named Group

概念:
使用 (?<GroupName>Regular Expression) 將符合 Regular Expression 的字串放進群組, 並以 GroupName 做索引值來取用.
以下範例來自於 [藍色小鋪]
範例1:
將 [QryGuideIDList:0001+2=g1+n1+g2+n2+g3+n3] 拆成
PGID: 0001
ListSize: 2
GuideID: g1,g2,g3
GuideName: n1,n2,n3