The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

ASP.NET 自訂角色的方式(不用實做 Role Provider)

我之前講過一篇文章叫做簡介 ASP.NET 表單驗證 (FormsAuthentication) 的運作方式,但若要使用 Forms Authentication 來驗證使用者,又要自行指派使用者角色時那就麻煩了,通常要實做角色提供者(Role Provider)才行,是有點麻煩,我今天介紹一個更簡單、方便的自訂角色方法。

... 繼續閱讀 ...

以 Convert.ToString(Eval("ID")) 取代 Eval("ID").ToString()

在 ASP.NET 頁面套版時,我常看到有工程師是這樣套版的:

<a href="<%# Server.UrlPathEncode(Eval("Attachment").ToString()) %>">XXXX</a>

看出問題了嗎?

... 繼續閱讀 ...

鬼打牆事件之『ASP.NET 無法刪除 Cookie 的問題』

先將我的執行環境說明一下:

... 繼續閱讀 ...

解決 LINQ to SQL 針對更新大型物件的效率極差的問題

我有一個頁面是使用 DetailsView 進行資料的新增與更新動作,其中有個圖片欄位在資料庫中的資料格式為 VarBinary(MAX),直接用來儲存圖檔的二進位內容,在新增資料的時候上傳檔案並存入資料庫中,在更新的時候直更新該欄位的內容,不過在更新的時候執行的時間都非常久,即便是上傳 10KB 左右的圖檔,在執行到 db.SubmitChanges(); 時都會執行個 30 秒以上,如果上傳幾 MB 的檔案就要執行好幾分鐘,所以常常會發生 Timeout 的情況。

... 繼續閱讀 ...

推薦:Microsoft Visual Studio International Pack 1.0 版

Microsoft Visual Studio International Pack 是一套國產的類別庫喔,是由台灣微軟的工程師所開發的,主要是幫助 .NET 程式開發人員建立全球化的應用程式,其中包括許多功能,其中有一套我們很可能會用到的「繁簡轉換」功能,也就是「中文繁簡轉換類別庫」。

... 繼續閱讀 ...

C# 3.0 初始設定 Hashtable 的方式

C# 3.0 有個特性叫做「物件和集合初始設定式」(Object and Collection Initializers),一般的用法是:

... 繼續閱讀 ...

解決 LINQ to SQL 資料庫更新衝突的情形

我前陣子遇到一個偶發的錯誤狀況,就是我在我某個頁面中需要計算文件下載的次數,因此需要每次進入頁面時都要讓該筆資料的 num 欄位的值自動加 1,也就是每次都要更新資料庫,但是每過幾天就有可能收到幾個 System.Data.Linq.ChangeConflictException 例外狀況,錯誤訊息如下:

... 繼續閱讀 ...

Mono已經完整支援WinForm 2.0的所有 API (共12,776個方法)

Mono 是一個開放原始碼的專案,主要目的是提供一個真正跨平台的 .NET 運行環境,目前有支援 Linux, Solaris, Mac OS X, Windows 與 Unix。主要是由 Novell 這間公司所支援。

... 繼續閱讀 ...

好用的 Json.NET 2.0 已發佈

JSON ( Javascript Object Notation ) 是一種很方便的資料格式,常用於 AJAX 的相關應用中,主要是可以將 JavaScript 的物件資料變成一種字串的格式,以方便網路傳輸,也是序列化的一種方式。

... 繼續閱讀 ...