Month: 2010-03

今天意外發現,LINQ to SQL在轉譯CHAR(1)欄位比對時,可能因寫法不同而產生極無效率的SQL指令! 當資料表的欄位為CHAR(1)時,在DataContext裡產生的對應物件型別是char,而我們直覺上可能寫成CharCol == 'A'的比對條件。但今天發現一件可怕的事... Ch...

前天寫了一篇 非同步方法之同步化及逾時機制,與chicken大人討論程式碼中Polling的部分(指每隔一段時間檢查一次結果的輪詢寫法),固然邏輯簡單,但效率與精確度不優,但若被呼叫的元件本身不提供"完成後主動通知"的機制,Polling雖然討厭,卻也無法避免! 若被呼叫端...

今天遇到的小需求: 有個元件函數以非同步方式執行,透過旗標變數表示執行狀態,我想在Console Application中以同步方式呼叫該函數,等待其執行完畢程式就結束,但要有逾時中止的功能。 非同步函數的例子如以下範例中的AsyncJobClass.DoAsyncWork(),它會以另開執行緒方...

微軟已將jQuery正式納入成為ASP.NET的一部分,VS2010 RC的ASP.NET 4.0專案甚至專案樣版中就已內附jquery-1.3.2之相關檔案: 不過,jQuery的版本更新還挺頻繁的,每次一改版,就會看到有不少人在詢問提供Visual Studio Intellisense的v...

寫過ASP/PHP的人一定對<td><%= SomeVar %></td>這類HTML穿插程式的寫法不會太陌生。先寫好HTML,再把將動態產生的值嵌入其中,設計及閱讀起來都很直覺,我一直認為它是讓ASP/PHP大受歡迎的主要原因。 而同樣概念能否應用在Javas...

再遇吸血鬼 趁著清早,爬了睽違半年多的二格山。 七點多出門氣溫約二十度,微涼但太陽已漸露臉,想必是個微熱早晨,於是只罩了件薄風衣,穿著排汗衫短褲加運動涼鞋的黑暗乙種登山裝,騎上機車直奔草湳大榕樹。 雖然大榕樹附近停了不少車,由阿柔洋道路最高點進入二格山林間...

公司工作機的顯示卡是當年入手XPC時,因為沒有Onboard VGA而買的卑微低階顯卡,原本的想法是工作機只用來寫程式抓蟲蟲,又不需要打怪撿寶練功,何必講究3D功能? 世事難料... 前些時候上尉LCD退役,P224W加入雙螢幕服役,由於7100GS只有DVI+D-Sub的組合,原先的19" ne...

這段程式碼背後有段心酸有趣的故事... 今天同事轉達User的需求給我,程式都寫完了,才驚覺一個多月前我早就寫過同樣的程式邏輯,而且還是同一位同事提的需求。換句話說,提需求的人跟做需求的人居然他X的很有默契地一起把需求忘個精光,讓我不禁思索起: 每日忙著處理的這些需求,對我的人生,究竟存在什麼意義...

要快速把資料庫掛上另一台SQL Server,我最常用的作法是複製mdf檔案過去,再直接Attach上去。不過,後續在新SQL上建立與原SQL相同帳號並設定權限的過程,常會遇到以下錯誤訊息: Microsoft SQL-DMO (ODBC SQLState: 42000) 錯誤 15023...

跟同事討論在新專案中開始採用LINQ,但有些古老元件的API只接受DataTable參數,我想到以前想過可以利用Reflection將LINQ查詢結果轉成DataTable,花了點時間,參考網路上的文章,整理成以下範例: using System;using System.Collection...

Excel/Word VBA寫過不少,頭一次寫PowerPoint VBA,拿出來分享一下。 同事跟我分享了多年來的收藏--一大堆精美華麗的投影片範例,需要對長官高層做簡報時,找相近的改一改,唬人效果十足。不過一百多個PPT檔案每個都只有一張投影片(因為背景、樣版不同,難以合併),瀏覽起來頗為麻煩...

我覺得這是一個笨問題,說出來會被人恥笑,不過找到解法很開心,還是決定PO文一篇以示紀念。 最近這陣子重操舊業,做起了弄投影片準備簡報的買賣。為了能生動地說明一些技術細節,我搞了幾個複雜的動畫展示(,其中不乏先顯示圖片1,按一下滑鼠出現圖片2蓋過圖片1的設計。 這種效果對PowerPoint來說是小事...

還記得我那台在客廳找到職場第二春的XPC SB81P嗎? 前些時候突發奇想,心想既然放在客廳還接了電視,何不加塊電視卡讓它具有錄影功能? 再加上Windows 7 Ultimate內建了Windows Media Center(但我還是習慣叫它MCE),如此才真能成為名符其實的娛樂中心。 弄來...

今天有個需求,要將某目錄下的圖檔清單轉成Javascript字串陣列,以方便網頁處理。例如: B:\100311\目錄下有F1.gif, F2.gif, F3.gif三個圖檔,便要產出var data = ["F1.gif","F2.gif","F3.gif"];,心血來潮,分別列出傳統組字串寫法...