2010年4月27日 星期二

在 DataTable 進行 Group by 並且取 Sum 的運算 (後續)

在前一篇 在 DataTable 進行 Group by 並且取 Sum 的運算 中,原以為已經提供可用的 solution 了,結果沒那麼順利

儲存數字的 DataColumn 型態居然是 String (在資料庫中是 NVARCHAR),我無言了...

維持著手上只有 DataTable 的條件,必須作一下轉型處理才能進行運算

2010年4月21日 星期三

在 DataTable 進行 Group by 並且取 Sum 的運算

今天幫忙同事以 DataTable 進行 Group by 並且取 Sum 的運算

知道方法有很多,我就自己懂的部分,寫下純 ADO.NET 的作法,先以 DataTable 的 ToTable 方法取得 distinct 過的群組鍵,接下來建立 Relation 關連回原 DataTable,最後利用在群組鍵 DataTable 中增加自動計算欄位 (Expression 屬性,透過 DataColumnCollection.Add method 設定) 完成關聯記錄的計算

見範例程式中 TestByPureAdoNet method 中寫得密密麻麻高亮的那幾行就是了

2010年4月12日 星期一

一些 QR Code 開放原始碼資源

編碼 與 解碼

  • QR Code for .NET Framework 支援 Windows Mobile 平台,提供範例程式碼,至 twit88CodeProject 下載
  • Open Source QR Code Library for Java,專案網頁於 SourceForge
  • ZXing project for Java / C++ / ActionScript 支援 Android 與 iPhone 平台,專案網頁於 Google Code
  • PyQrCodec for Python,其實 PyQrCodec 算是 wrapper,因為它依賴一群 DLL 元件,主要呼叫 qr_codec.dll 中的 API,至於 qr_codec.dll 的原始碼則未包含於此專案中
  • d-project for ActionScript 3 / JavaScript / PHP / Java,專案網頁於 Google Code
    (JavaScript 版是有點出乎意料到 XD)

2010年4月10日 星期六

初探網頁弱點偵測工具 Burp Suite

初次接觸 Burp Suite 這套 web 漏洞檢測工具,覺得真是簡單易用,當你懂得一些 HTTP 的原理與特性,不必寫程式就可以進行漏洞測試 (說是攻擊測試,好像更加準確)

分析 HTTP 的工具中,我其實比較常用 FiddlerWireShark,它們同樣都可以捕捉到 HTTP 封包 (WireShark 用途更廣),在 Web 偵錯時非常的好用,你可以取得非常豐富的 HTTP 資訊

相形之下,Burp Suite 就是為了攔截、修改 HTTP requests 的用途而誕生 (切記是學術、是研究!)

這裡我打算紀錄第一次使用的經驗,因為 Brup Suite 是以 Java 寫成的軟體,所以得先確認有 JRE 環境

2010年4月6日 星期二

在 SQL Server 中將欄位值重設為 Null

在 SQL Server Management Studio 中,要修改 TABLE 某列的欄位值是開發期間經常會發生的事情,但是你有遇到過需要將欄位重設為 Null 嗎?

過去我遇到這樣的情況時,都只能用很爛的步數,那就是 Copy & paste

就這樣:將作用中的儲存格移動到含有 Null 值的欄位上 copy,再移到要設為 Null 的欄位上 paste,搞定

2010年4月5日 星期一

分享 NPlurk - The Plurk API .NET Wrapper using C#

嗯... 去年底完成之後,就一直擱置著,想到時間都花了,多可惜,因此想讓有需要的人可以取用

這個 .NET Wrapper 是用 C# 寫完的,引用了 CodePlex 上的 Json.NET 組件 (新版本已改用 .NET 內建的 JavaScriptSerializer)

實作的過程中,沒有太深奧的技巧,全因原生的 Plurk API 設計結構非常簡單,剩下的都只是原始 API 對應文件的苦工

我把它發佈到 CodePlex 上了,這裡是專案網頁 NPlurk

Enjoy!

2010年4月4日 星期日

動態 CSS 選單在瀏覽器中顯示異常

週五有同事遇到了網頁程式中的動態選單無法正常顯示的問題,被 art 提供的 flash 元件遮住大半,仍舊是典型的 CSS menu 顯示異常的問題

處理過太多次了,每次都得花我很多口水精神解釋,這次乾脆著文一篇,下次好直接參考使用

一般 CSS menu 在顯示上會遇到以下的問題,稍作整理
  • 被 flash 物件所覆蓋,這種情況在 Firefox 中沒有發現,其他常見瀏覽器幾乎都會
  • 被 <select /> 網頁元素所覆蓋,目前這種情況只剩下顧人怨的 IE6 會發生

以下程式碼用來試驗各種瀏覽器不同遮蔽的情況

2010年4月2日 星期五

網頁的多重捲動(Parallax Scrolling)效果

今天在號稱 Front-End Engineer 的 James Padolsey 大大 Blog 中挖寶時,被捲動的網頁效果吸引住了

起初以為是老花,但是以我20多年前打電玩的經驗,和一天使用超過18小時卻被醫生嫌沒有近視的火眼金睛,鑑定為多重捲軸確診案例

James 的網頁確實以兩個層次捲動著 搞什麼阿

因為共有兩層,當下就想背景一定是在 body 的 CSS 中以 background-image 和動態 background-position 指定(控制 y 軸)兜出來的效果