Month: 2015-08

專案陸續改用Managed ODP.NET,實際用過幾回,發現設定TNS_ADMIN環境變數最省事直覺,只要維護一份TNSNAMES.ORA,設定一次即可供所有網站共用,TNS_ADMIN的變數名稱又很清楚明瞭。(參考:指定TNSNAMES.ORA共有config設定/複製TNSNAMES.OR...

一切只起因我想試試WCF net.tcp,卻遇上近年來數一數二的刁鑽茶包,纏鬥超過一天… 故事從前幾天寫的.NET Remoting、WCF、Web API、Socket評估文說起,結論指出當Client/Server都是.NET,WCF仍是極出色的選項,尤其使用TCP管道配合二進位格式傳輸,...

遇過不少次Windows更新或Windows功能安裝失敗,上網爬文得到的回答往往都是先用SFC(系統檔案檢查程式)檢查系統檔案是否遺失或毁損,嚴然已是排除這類問題的SOP,就跟修車要先拆坐墊一樣天經地義。這幾天剛好有一次SFC檢測及系統檔案修補經驗,特筆記備忘。 我遇到無法安裝Windows功...

Hackpad是G0V開源社群愛用的線上文件協同編輯平台,在學運期間通過1500人壓測一戰成名。 Hackpad 基本是個簡便易用的網路共筆平台,支援多人共用即時更新,編輯文字、上傳圖檔還算便利,能追蹤編修歷程,比Wiki系統好用,我們開發團隊一直覺得用它整理系統架構文件、共用程式庫規格、茶包...

周遭幾個系統正面臨相似抉擇:使用.NET Remoting的舊程式,需與伺服器建立連線進行高頻率雙向傳輸,計劃翻寫新版本。.NET Remoting是.NET 2.0時代的技術,十年後多了不少選擇:WCF、Web API、SingalR… 選擇變多煩惱跟著來,該怎麼選擇才對? 面對這道選擇題,我...

前一篇文章探討了「WHERE 1=1動態查詢條件組裝」的效能問題,並介紹如何利用C#語言特性簡單寫出沒有多餘WHERE 1=1的馬甲線SQL指令。而在前文提到的Code Review會議,還有一招不需要組裝WHERE指令的做法也被提及。 //REF: http://goo....

稱不上DB咖的我,反常地連寫兩篇SQL筆記,其實都是研究「動態產生SQL查詢條件」議題的副產品,這篇才算步入正題,鴨架子湯先來兩碗,烤鴨才上桌,哈!但這樣安排是對的,以下探討有一部分需要先前筆記的基礎才好聊下去。 兩週前,參加一場Code Review討論,會中大家剛好聊到「動態產生SQL查詢...

繼續研究不同SQL寫法對執行計劃的影響。 如果大家讀過上一篇筆記,就會知道以下兩則查詢將使用不同的執行計劃,前者走Clustered Index Scan,後者則是Index Seek + Key Lookup。 SELECT ProductID, OrderQty FROM Sale...

寫這篇筆記是因為前陣子在實驗SQL查詢效能,發現自己對於「相似的SQL查詢有時使用Index Scan,有時又選擇Index Seek」的行為有些迷惑,決定花點時間重新認識這幾個基本資料庫概念。(對於SQL我只有玩票的水準,內容如有謬誤,敬請指正) 當我們對資料庫下達SELECT … WHER...

繼發現VS2015有許功蓋BIG5相容問題、寫了批次轉檔潛盾機,接到網友們陸續回饋,我學會好幾種不同做法,也知道了幾個批次轉檔軟體,在此感謝。 昨天ChrisTorng再分享了一個存檔時自動轉UTF8的VS套件,粗略評估,它主要功能在於存檔時強制存成UTF8編碼,若專案存在大量BIG5編碼程式...

話說公司的ASP不死鳥正努力在Windows 2012R2 x64展開新生活(參考:Windows 2012 R2 x64執行ASP經驗分享),接獲通報,不死鳥因水土不服烙賽,提起藥箱前往探視。 問題出現在某段使用OracleInProcServer.XOraSession又使用自訂WSC元件...

改用VS2015後沒多久就發現它處理BIG5(ANSI)編碼程式碼的原則不同於以往(推測與編譯器改用Roslyn有關),導致部分使用BIG5編碼存檔的古老程式檔,會因許功蓋造成編譯錯誤。 PO文隔兩天同事跟我說,他們換VS2015後也射了好一陣子茶包,最後爬文又爬回我的文章。XD 後來聊到可以...

async/await是.NET 4.5+加入的新玩意兒。.NET 4推出的Task簡化了非同步程序的撰寫,async/await則讓程式碼簡潔度更上一層樓。如果大家對Thread、Task、aysnc、await還不熟悉,我找到兩篇還算淺顯易讀的對岸文章-async & await 的...

接獲報案,某封來自韓國e-mail的附件Word檔,開啟時出現亂碼警示: 直接檢視檔案內容,資料以SCDSA002起首,看似無規則亂碼,與我所知的檔案格式都不吻合: 上網用"SCDSA002"爬文,找到一些討論文章,有兩大特色:1) 同樣的SCDSA002 Pat...

當初為TFS版控建立工作區時沒想太多,取了TFSWorkspace當資料夾名稱。隨著接觸專案變多,跨越多個Project Collection,每個都需要自己的工作區,這才意識到原先的命名大有問題,工作區資料夾應加上Project Collection名稱才合理,之後再設工作區,IM-ERP P...