我前陣子遇到一個偶發的錯誤狀況,就是我在我某個頁面中需要計算文件下載的次數,因此需要每次進入頁面時都要讓該筆資料的 num 欄位的值自動加 1,也就是每次都要更新資料庫,但是每過幾天就有可能收到幾個 System.Data.Linq.ChangeConflictException 例外狀況,錯誤訊息如下:
... 繼續閱讀 ...
JSON ( Javascript Object Notation ) 是一種很方便的資料格式,常用於 AJAX 的相關應用中,主要是可以將 JavaScript 的物件資料變成一種字串的格式,以方便網路傳輸,也是序列化的一種方式。
... 繼續閱讀 ...
我們之前有一支 Console Program 程式是用來收取 POP3 伺服器中的郵件,並在解析郵件內容後進行分析與後續處理,不過三不五時程式都會 Hang 住不動,導致分析作業無法進行下去。又因為我們在開發環境一直都很正常的執行,程式是到正式主機才 Hang 住的,所以一直很苦惱到底要怎麼解決。
... 繼續閱讀 ...
這陣子的專案幾乎每個都會用到 LINQ to SQL 技術,但我發現有些人在撰寫程式碼的時候有些不太好的習慣,會對資料庫進行一些多餘的查詢動作或建立多餘的 DataContext,以下是我最近觀察到的幾種狀況與建議的寫法:
... 繼續閱讀 ...
一般眾所周知的亂數的產生應該都會使用 Random 類別,而在大部分的情境中使用 Random 類別其實是足夠用的,例如說你想要透過亂數選取目錄中的照片輸出到網頁中,或是將篩選出來的資料亂數排序後輸出到檔案(例如說抽獎程式)。
... 繼續閱讀 ...
以前我都沒想過可以用 Regular Expressions 驗證複雜格式的密碼,原來可以用 Regular Expression 中的群組建構式達成這個目的,例如說密碼的條件是這樣:
... 繼續閱讀 ...
上次在微軟 Windows Server 2008 與 Visual Studio 2008聯合上市發表會看到有講師執行一個 LINQ Project Sample Query Explorer,覺得很好用,因為他把所有 LINQ 的範例放在程式裡,點選之後就會出現語法,還可以執行,真是學習 LINQ 的絕佳教材。
... 繼續閱讀 ...
去年有寫過一篇 DropDownList 在作 DataBind 的時候發生 Exception,是還蠻實用的,不過原則上來說程式盡量不要讓他發生 Exception 比較好,因為丟出例外事件是十分消耗系統資源的,今天另外分享另一個小技巧。
如果原本指定給 SelectedValue 的程式長這樣:
DropDownList1.SelectedValue = Request.QueryString["ID"];
建議可以改成這樣:
... 繼續閱讀 ...
在做「匯出資料」功能的時候常會使用到 CSV ( Comma Separated Value ) 這種檔案格式,雖然格式並不複雜,但有好用的 Library 當然也能夠更省事啦。
... 繼續閱讀 ...
如果有人使用 BlogEngine 1.3.0.0 版本的話,可能需要「立即」將你的版本升級至 BlogEngine 1.3.1.0 版,因為 1.3.0.0 有個嚴重的安全性漏洞可以將該網站所有使用者的帳號、密碼下載。這問題連 BlogEngine.NET 官方部落格 都被駭了。
... 繼續閱讀 ...
最近在測試一個大量做 Cache 的網站,測試的過程中想說要先將 Cache 物件中的資料全部清空,才發現原來 ASP.NET 中內建的 Cache 物件 ( System.Web.Caching.Cache ) 並沒有支援 Clear() 方法,無法用一行把所有的 Cache 物件清空,然而我也嘗試看有沒有 Cache.Keys 物件,好讓我用 foreach 取得所有 Cache 的 Keys 進而一個一個刪除,結果也是沒有!原來要用以下這段程式碼才能將所有 Cache 中的 Keys 全部取出並逐一刪除:
... 繼續閱讀 ...
ASP.NET 3.5 中新增的 ListView、DataPager 與 LinqDataSource 控制項可說是絕佳拍檔,不過當你不使用 LinqDataSource 的時候會發生一個小問題,就是當你在第一次點選 DataPager 中的頁碼時並不會跟著跳頁,而點選第二次的時候才會正常運作!所謂的「不使用 LinqDataSource 的時候」是指你的資料來源的取得可能是寫在 Code Behind 中或是使用 ObjectDataSource 或 SqlDataSource 控制項,例如:
... 繼續閱讀 ...
在使用 LinqDataSource 控制項進行群組( Grouping )與彙總( Aggregating )資料的時候,有兩個很特殊的關鍵字:Key 與 It
... 繼續閱讀 ...