The Will Will Web

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

網站建置不是件簡單的事 @ 打造網站的步驟

在筆者這十多年的工作歲月中,大部分的時間都與網站建置這件事糾纏不清,最早期剛接觸網頁時還是用HE5 (漢書) 或 Notepad 開始撰寫 HTML 開發網站,偶爾回想起來感覺當時寫網頁好辛苦,都沒有設計工具或開發工具可用,不過若換個角度想,其實當時才是最幸福的,你想想今日的網頁設計即便有那麼多好用的工具支援,但設計網頁的過程中有變簡單嗎?有太多網頁設計相關的問題需要被克服,像是跨瀏覽器相容性的問題、互動網頁的挑戰、伺服器端的程式開發、針對海量網頁要求的架構、AJAX、JSON、HTML5、CSS3、…,有太多東西要學了。

... 繼續閱讀 ...

透過 Entity Framework 如何有效率的取回特定資料表的筆數

在許多開發情境下經常會試圖取回整個資料表的筆數,像我們就有個統計網站累積使用人次功能,開發人員寫的時候就是用 SELECT COUNT(*) FROM TableName 的方式來取得目前總共有多少人次進入網站,但用這種方式執行效率並不高,每次執行都會產生一次 Index Scan,也就是在 SQL Server 資料庫裡所有主索引鍵的資料都會被掃瞄過一次才能統計出資料總筆數,當資料越多的時候,效能就會越差,在這裡我提供另一種 hack 的方法可以更有效率的取得整個表格的總筆數,但此法僅適用於 SQL Server 喔!

... 繼續閱讀 ...

如何在「建置部署套件」或「單鍵發行」時一起發佈空目錄

上週公司有個同事遇到一個問題,就是他透過 Visual Studio 2010 的「單鍵發行」功能發佈網站,程式在執行時就會出錯,經我檢查之後發現原來他在網站的 App_Data 目錄下有建立一個必要的資料夾,此資料夾會存放執行時期寫入的資料,所以目錄不存在就會掛掉,但是 Visual Studio 2010 其實並不會發佈任何沒有檔案的目錄,因此要解決這個問題就必須特別處理一下。

... 繼續閱讀 ...

Windows 如何設定「特定服務」由「特定使用者」進行管理

我們有個客戶的生產環境的資安要求極其嚴格,我們廠商進去維護都必須申請才能提高權限,否則就要委由系統維護人員進行操作,所以非常不方便。然而他們向我提出了個例外條件,就是他們可以接受特定服務可以由廠商的特定帳號來管理,不過好像 Windows 沒有這種授權方式,請我找看看有沒有這種方法。最後我也研究出設定的方法,還真的 100% 符合客戶的要求,今後我們維護作業就更輕鬆了,以下是設定的方法筆記。

... 繼續閱讀 ...

解決 SQL Server Profiler 找不到「使用範本」的問題

我的個人電腦由於先安裝了 SQL Server 2005,然後再安裝了 SQL Server 2008,之後又安裝了 SQL Server 2008 R2,在這樣不斷升級的過程我發現我目前的最新版 SQL Server 2008 R2 的 Profiler 工具找不到「使用範本」可選,以致於無法讓我在本機收錄 SQL Server 執行時期的資料,這問題曾經困擾著我,不過還好問題已經修復了,以下是修復此問題的筆記。

... 繼續閱讀 ...

如何在Windows作業系統安裝 Node.js 執行環境 (WebMatrix)

昨天本來很想去參加HTML5與Node.js在台灣聯合技術小聚,礙於有要事在身無法參加實在可惜,最近剛好看到 Tomasz Janczuk 開發出 iisnode 專案,一整個超強的,可以用非常直覺的方式在 Windows 平台與 IIS 來管理 node.js 應用程式,還能用 WebMatrix 進一步整合開發環境,所以特別撰文告知 node.js 迷這個好消息。 :-)

... 繼續閱讀 ...

建立 NTFS Reparse Points 的方法 ( Soft Link 與 Hard Link )

最近在安裝壹台測試機,由於要架設好幾個站台,每個站台的程式部分大概有 20MB 左右而已,但是搭配著網站進行測試的相關檔案卻有將近 3GB 之多,為了可以順利測試網站這些檔案都必須存在,如果真的複製好幾份的話主機就會頓時浪費許多磁碟空間,這時就可以多加利用建立 檔案連結目錄連結目錄連接 (Junction) 的方式有效減少硬碟空間。

... 繼續閱讀 ...

如何設定與啟用 ASP.NET 的 SQLServer 工作階段狀態模式

今天有同事請我幫忙設定讓 ASP.NET 網站能改用 SQL Server 當作 工作階段狀態 (Session State) 的提供者,剛好乘機將設定的過程筆記一下,其實設定過方法並不複雜,只要下幾個指令並修改 web.config 即可完成,總共也只有幾個步驟而已,其中的注意事項我也會提到一些。

... 繼續閱讀 ...