The Will Will Web

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

解決 Management Studio 管理工具無法變更表格結構的問題

這陣子經常在台中教書,每次換到不同班的學生就會遇到一次這個問題,因為從 SQL Server 2008 開始 Management Studio 管理工具預設會防止儲存需要資料表重建的變更(Prevent saving changes that require table re-creation),意思是說,當你在修改資料庫表格結構時,當修正的幅度過大,例如移除欄位、變更欄位順序、變更欄位型態、變更欄位長度、變更是否允許 NULL等狀況,預設都會拒絕你變更資料表結構,導致按下儲存按鈕之後並沒有真正的變更資料結構(Schema),這個預設設定對剛踏入 IT 屆小白兔來說實在有點挫折,不過這點安全控制也保護了資料庫遺失資料的風險。

... 繼續閱讀 ...

Postfix啟用SPF檢查後記得將所有郵件伺服器IP加入白名單

我們公司有兩台 SMTP 伺服器,都是用 Linux 與 Postfix 架設的,也分別就是我們公司郵件域名 MX 紀錄中的那兩台,一般來說郵件都會直接寄進公司那台主要 SMTP 伺服器,但前幾天公司的 Postfix 郵件主機出狀況,導致信件全部都發到另一台備援用的 SMTP 伺服器了,修復之後郵件的確都已經轉發到主要 SMTP 伺服器上,大家也都正確收到斷線那段時間來的郵件,不過確有一封重要的客戶郵件被退信了,幾經研究後才發現原來是 SPF 紀錄搞的鬼,最後終於把問題搞定!

... 繼續閱讀 ...

如何進行網站壓力測試:以不動產交易實價查詢服務網為例

最近這兩天因為【內政部::不動產交易實價查詢服務網】網站上線而引起網友熱烈討論,雖然批評聲浪非常大,但我並不是要來數落這個網站的缺點,而是希望透過這個案例告訴大家網站壓力測試的重要性,尤其網站是那種可預期的大流量到來,網站建置廠商或客戶更應該提前做好準備,以確保網站能在預估的標準下正常運作。我相信,沒有人會反對網站上線前要做壓力測試,但我多年經驗下來發現,雖然手邊壓測工具都有,但普遍的問題是不知道怎樣測試?不知道測試的重點在哪?不知道壓測標準怎樣界定?不知道壓測報告怎樣閱讀與分析?今天想透過這篇文章來分享我在實務上進行網站壓力測試的經驗。

... 繼續閱讀 ...

ASP.NET Web API 如何透過程式決定回應XML或JSON格式

雖然 ASP.NET Web API 內建支援 JSON 與 XML 兩種輸出格式,並依據瀏覽器端送出的 Accept 標頭自動決定回應的內容格式,不過有時候我們的確也需要讓程式來控制要回應哪種格式,本文將介紹如何讓 ASP.NET Web API 自訂回應結果格式 (XML 或 JSON),以方便透過其他方法來決定如何回應訊息格式。

... 繼續閱讀 ...

如何讓 ASP.NET Web API 無論任何要求都回應 JSON 格式

ASP.NET Web API 是新一代的 HTTP 網路服務開發框架,除了可以透過 Visual Studio 2012 快速開發外 (內建於 ASP.NET MVC 4 的 Web API 專案範本內),也非常適合用於各種跨平台的行動裝置上,如果你想開發 RESTful 應用程式,那麼使用 ASP.NET Web API 應該是挺理想的解決方案。不過 ASP.NET Web API 內建支援 JSON 與 XML 兩種輸出格式,並依據瀏覽器端送出的 Accept 標頭自動決定回應的內容格式,不過也因為這點讓有些 Web API 新手上路的開發人員來說似乎頗為困擾,本文將介紹如何讓 ASP.NET Web API 強迫回應 JSON 結果,以方便直接用任何瀏覽器都能看見 JSON 的執行結果。

... 繼續閱讀 ...

在 ASP.NET MVC 使用 @Html.ActionLink 所發生的詭異現象

上上禮拜同事在開發一個 ASP.NET MVC 專案時遇到一個詭異問題,就是在 View 裡面輸出超連結時竟然會多出詭異的查詢字串(QueryString),他使用標準的 @Html.ActionLink 輔助方法輸出 <A> 超連結時,竟然有些超連結的尾巴會加上 ?Length=4 這個查詢字串,但是在 ASP.NET MVC 的 View 裡根本就沒這樣設定。然而上週在台中教授 ASP.NET MVC 課程,竟然也有學員再次遇到相同的問題,我猜想這可能是初學者都會遇到的常見問題,特別寫文章來提醒各位。

... 繼續閱讀 ...

介紹好用工具:RWD Bookmarklet (測試行動版網站的利器)

前陣子在 Tech‧Days Taiwan 2012 演講【使用 HTML5 打造友善網頁】這個主題,課程中提到幾個不錯的 RWD (Responsive Web Design) 書籤工具,可以很方便的快速切換網頁裡可顯示的網頁範圍,以便測試你的網頁在不同視窗大小之下如何顯示。這幾套 RWD 書籤工具厲害的地方在於完全以 JavaScript 寫成並能跨瀏覽器執行,所以不管你用甚麼瀏覽器都可以使用,讓你不用安裝任何瀏覽器外掛或擴充功能就能使用。

... 繼續閱讀 ...

SQL Server 2012 Express LocalDB (SqlLocalDB) 深入剖析

微軟最新推出的 SQL Server 2012 Express LocalDB 是一種 SQL Server Express 的執行模式,特別適合用在開發環境使用,也內建在 Visual Studio 2012 之中。由於這種 SQL Server 的執行模式跟以往非常不同,我發現許多人不太清楚 LocalDB 的使用與管理方式,有必要專文介紹 SqlLocalDB 的相關知識。

... 繼續閱讀 ...

調整 IE10 與 Windows 8 語言喜好設定為舊版的 zh-TW 語系

今年三月剛開始用 Windows 8 預覽版時曾經寫過一篇【ASP.NET 2.0 多國語系網站與 Windows 8 的 IE10 語系設定】文章,該文章提到一個在 Windows 8 與 IE10 在針對語言喜好設定時的問題,除了可能會造成你現有 ASP.NET 多國語系應用程式發生例外狀況外 (先前文章有提到解決辦法),還有可能會導致許多網站顯示錯誤的語言文字。最近安裝了 Windows 8 RTM (正式版) 之後,終於被我找到解決辦法。

... 繼續閱讀 ...