提防臉書帳號釣魚網站
在臉書專頁留言區看到一則帳號停權通知,心頭一驚:Last Warning, Your account will be disabled permanent because your accouts have been reported by other users,And another reason is not allowed on Facebook… 留言者取名Facebook...
View Article【茶包射手日記】由TFS取得專案發生System.Web.Mvc.dll參照無效
接到任務,要在前人的專案新増一個小功能。由TFS下載原始碼準備編譯時,出現奇怪現象。System.Web.Mvc參照失敗:但System.Web.Razor及其他System.Web.*系列是好的:同一專案在同事機器開啟一切正常。由於是參照問題,加上專案有點歷史,一度以為專案是因為最早使用Visual Studio...
View ArticleASP市佔消失之謎
早上讀到一則PHP7相關報導,雖然跟PHP沒什麼緣份,但文章裡附的一張後端語言市佔統計圖引起我濃厚的興趣。統計圖裡PHP佔了81.7%,ASP.NET則是16.1%,同時使用兩種語言的網站會重覆計算(假設為N%,很多PHP應是來自LAMP,Linux+Apache+MySQL+PHP,我認為N不會太高),故二者吃下81.7%+16.1%-N%的市場(說不定超過95%),而第三名Java只有3%。分佈...
View Article黃色小鴨除錯之原力升級版
大家有聽過黃色小鴨除錯法嗎?黃色小鴨除錯的概念起源於一本書,故事裡的程式大師隨身攜帶一隻黃色小鴨,遇到要除錯或射茶包時,就把小鴨放在桌上詳細地向小鴨解釋每一行程式。實際體驗過幾次(當然,不一定要跟鴨子聊天,跟你的同事,甚至滑鼠講一下心事都成),還真的因此停止鬼打牆。黃色小鴨除錯法的奧妙在於當你向別人(甚至是完全不懂程式的人)詳細解釋的過程,無形中會強迫自己從頭釐清細節,逐一梳理邏輯,往往因此突破盲點...
View Article【茶包射手日記】ScriptBundle與自動部署時間差
同事報案,舉發古怪茶包一枚。ASP.NET MVC專案新増了moment.js,在BundleConfig將其加入打包範圍[延伸閱讀]: bundles.Add(new...
View Article蛤,微軟停止.NET 4.0/4.5/4.5.1的技術支援?會對我的系統造成影響嗎?
2016/1/12是個大日子,有好幾項微軟產品結束技術支援,包含:Windows 8 IE 8/9/10 (狂賀).NET 4.0/4.5/4.5.1 生活周遭的Windows 8都已免費升級到Windows 8.1或Windows 10,受影響者應該有限。而官方停止支援舊版IE是好消息,以後可以大聲客戶說我們不支援IE...
View Article快速將C#型別轉成TypeScript介面定義
使用TypeScript處理AJAX呼叫時,常需要在前端定義與C#物件屬性一致的TypeScript型別,以便將後端傳來的JSON資料還原成強型別物件。針對較正式的資料模型,我會用CodeGen方式同步C#與TypeScript端的型別定義(順便處理多語系問題)。但蠻多時候處理對象只是零散的小型別,不必殺雞用牛刀,針對這類需求,推薦一個好用工具-TypeLITE。在NuGet查關鍵字"typelit...
View Article善用VS2015 NuGet Manager解決方案管理功能
NuGet已經是Visual Studio寫專案時的柴米油鹽醬醋茶了,但有些人可能沒發現在解決方案(.sln,Solution)層也可以開啟NuGet Manager。如下圖,在Solution Explorer的.sln開右鍵選單,有一個「Manage NuGet Packages for Solution…」:在解決方案開啟NuGet...
View ArticleCTE應用-將多筆查詢結果合併成逗號分隔字串
一對多關聯是常見的資料庫應用情境,有時我會遇到將多筆關聯資料特定欄立合併成逗號分隔字串的需求。聽起來有點抽象,用個實例說明。假設有兩個資料表,應用系統清單及負責該系統的工程師名字,用以下指令建立模擬資料:CREATETABLE AppSystem ( Name VARCHAR(16), CodeName VARCHAR(16))INSERTINTO AppSystem VALUES ('HR',...
View Article欄位合併效能比較:CTE vs FOR XML
前一篇文章介紹用CTE實現SQL一對多關聯欄位合併的方法,找資料期間曾發現另一個替代做法,利用SQL Server的FOR XML PATH('')技巧,可將多筆資料轉成單一字串(參考),看來也相當簡潔。但當下覺得子查詢加FOR XML轉換的做法有效能疑慮,理應不如CTE(事實不然!),加上搞CTE比較有挑戰性,故選了CTE研究嚐鮮。網友ChoeChin留言提到FOR...
View Article在SharePoint網站檢視RDLC報表發生錯誤
冷門茶包一枚。在SharePoint網站安裝網站應用程式,在其中使用ReportViewer檢視RDLC報表,發生以下錯誤:The type 'Microsoft.SharePoint.Portal.Analytics.UI.ReportViewerMessages, Microsoft.SharePoint.Portal, Version=12.0.0.0, Culture=neutral,...
View Article【茶包射手日記】IIS不接受TCP連線
公司有一台主機連續兩天出現異象。剛上班的尖峰時間出現IIS網站無回應,使用遠端桌面登入觀察到桌面反應遲緩,但幾個系統服務與網路磁碟機功能正常,IISRESET後問題仍未消除。進一步用 telnet 127.0.0.1 80 測試,得到的結果是TCP連線一建立就被切斷,主機上有另一個走8080 Port的PHP網站,telnet 127.0.0.1 8080...
View Article2016台北渣打馬拉松
攝氏4度。曾以為這是跑東京馬或京都馬才有幸體驗的跑馬溫度,今天我們終於能驕傲地說:台灣,做到了!(補聲暗)報名渣打馬原本期望靠著路平天冷好催速,振作起來挑戰PB。天曉得遇上44年難得一見的霸王級寒流(專業名詞是負北極振盪),全台處處雪花飄,台北市不只陽明山,連木柵附近的猴山岳、阿柔洋、二格山甚至指南宮都下起霰來,面對此生難逢的寒流,把握氣溫最低的清晨時分,在戶外奔跑徹底體驗4度到底有多冷,好盡興呀~...
View ArticleGUID Primary Key資料庫避雷守則
【聲明】該不該用GUID當Primary Key是可以讓開發人員大戰三百回合的好題材,由標題可知我屬於GUID陣營,這篇文章不打算花時間論證該不該用GUID PK,假設讀者已接受使用GUID當PK,只聚焦如何避免GUID PK導致資料庫效能悲劇。故事源起MVP...
View Article【茶包射手日記】VS2015卡在專案初始化無回應
用Visual Studio 2015開啟最近每天在寫的解決方案,突然卡在「解決方案呈現載入中(loading…),多個專案處於初始化中(initializing…)」狀態,Visual Studio 2015...
View Article漫談尾牙抽獎程式的公正性
上週看到以程序員生活為題材的漫畫作者西喬的創作:「年会上的程序员们……」,改編自一個「CTO覺得抽獎程式有點問題,程式作者被迫在旺年會場接受上千人Code...
View Article小技巧-自動刪除App_Data過期暫存檔
寫網站時有時需要產生暫存檔,過去我慣用的做法是透過System.IO.Path.GetTempPath(),將暫存檔寫入Windows系統暫存資料夾,如意算盤是暫存資料夾本來就是放暫存檔的地方,而Windows有機制可在磁碟空間不足時刪除暫存檔釋放空間,如果檔案沒有機密或敏感性,放在暫存資料夾基本上可以Fire and...
View Article小技巧-為text-overflow: ellipsis增加完整文字顯示
CSS 的 text-overflow: ellipsis 刪節號效果可讓長度不一的文字等寬顯示,遇到版面空間有限又必須整齊排列時很好用,但套用刪節號樣式後看不到完整文字,尤其遇上文字前半截相同時更是難以區別,是一大困擾。為此,我的慣用解法是為套用 ellipsis 的文字元素加上 title Attribute 存入完整文字,將滑鼠移到文字上停留就能看到原始文字,問題迎刃而解。每次套用...
View ArticleLINQ寫法:類SQL查詢語法 vs 方法串接
前陣子跟同事討論到LINQ查詢寫法。記得在LINQ剛推出時以「可以在C#裡寫SQL語法查資料」為號召,範例裡常看到這種長得有點像SQL語法的LINQ查詢運算式(LINQ Query Expression,我習慣叫它「類SQL查詢語法」): IEnumerable<int> scoreQuery = //query variable from score in scores...
View Article讀書筆記-思考的藝術
前陣子跟同事聊到邏輯謬誤,同事提到德國作家的相似作品,談非受迫性的思考邏輯錯誤及行為偏誤,邏輯控對這些知識沒什麼抵抗力,趁著剛好拿到博客來Coupon就入手了,下單隔天書就送抵小七門市,效率令人驚喜。(線上書店品項完整折扣多再加上交貨神速,實體書店只剩能深入試閱及可搭訕知性正妹等優勢,這場仗註定艱辛。)書薄不及300頁又算淺顯好消化,沒兩下就能翻完,但衡量自己不會有耐性再翻一次,又不想讀過的內容太快...
View Article