The Will Will Web | Visual Studio

The Will Will Web

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

ASP.NET 網站專案如何利用 MSDeploy 工具進行部署

我之前寫過一篇〔如何使用 Visual Studio 2010 的「單鍵發行」功能〕文章,當時簡直挖到寶一樣,可惜最近又開始維護幾個多年前用 ASP.NET 2.0 建置的網站,當時是以 網站專案 (WebSite Project) 的專案類型開發的,因此 Visual Studio 2010 的「單鍵發行」功能就變的英雄無用武之地,還好透過 Visual Studio 2010 Web Deployment Projects (WDP) 可以將網站專案封裝起來,但是上週遇到一個怎樣都無法發行成功的問題,查了兩個小時才找到這原來是一個 Visual Studio 2010 ( 含 SP1 ) 的 Bug,使用的人要特別注意這個小問題。

... 繼續閱讀 ...

使用 MSDeploy 部署網站時如何避免刪除遠端網站的檔案

這陣子都在玩跟網站部署有關的相關技術,其中有一段一定要透過 MSDeploy 手動部署網站上去,但問題是在透過 MSDeploy 批次檔進行手動部署網站時,由於 MSDeploy 會自動比對遠端與本地端的檔案差異執行「雙向同步」,這反而造成了當遠端伺服器裡有新增的檔案(例如在 App_Data 下有動態新增的檔案),每次透過 MSDeploy 部署後那些不存在本地端的檔案全部都會被刪除,這是個大問題,而我也研究了好些時間才找到方法解決這個問題。

... 繼續閱讀 ...

如何利用「資料庫發行精靈」將新版 SQL 資料庫降級成舊版

不知道各位有沒有遇過一種狀況,那就是原本 SQL Server 2005 的資料庫,將資料庫卸離 (Detach) 後丟進新版的 SQL Server 版本掛載 ( 例如 SQL 2008 或 SQL 2008 R2 ),然後突然間有���事說他的資料庫是舊版的,而你怎樣都再也無法將資料庫卸離後掛載到舊版的 SQL Server 了?!這問題似乎不是很多人知道怎樣處理,今天特別撰文說明整個轉移資料庫的流程,而且此功能已經內建於 Visual Studio 2010 之中,使用上非常方便,只是若沒人提起這功能,自己要找到這功能還真有點困難。^^

... 繼續閱讀 ...

介紹好用 Visual Studio 2010 擴充套件:NuGet 套件管理員

長久以來微軟的開發平台一直都沒有像其他開發平台常見的套件管理工具,像是 PHP 就有 PEAR 可用、Perl 也有 PPM (Perl package manager),甚至 Python 也有 PyPM (Python Package Manager) 等等。大約在去年八月左右微軟內部開始進行了一個套件管理員的開發計畫名為 NuGet,此工具主要跟 Visual Studio 2010 結合使用,可讓你在使用 Visual Studio 2010 開發專案的過程中隨時安裝、更新套件,像是 jQuery, ELMAH, log4net, … 等等目前共有上千個套件可供選擇,NuGet 的出現可說是所有開發人員的福音,絕對是個必學的工具之一!

... 繼續閱讀 ...

介紹好用 Visual Studio 2010 擴充套件:Snippet Designer

在 Visual Studio 2010 之前的版本所支援的 Code Snippet 種類非常有限,只有在編輯 C#Visual BasicXML 時可以使用而已,但到了 Visual Studio 2010 又新增了 JavaScriptHTML 以及 SQL 語法等 Code Snippet 支援,在寫程式時就更加方便了,在這裡我必須要推薦這套 Snippet Designer 擴充套件,他能幫我們用更人性化的方式管理我們常用的或內建的 Code Snippet 程式碼片段。

... 繼續閱讀 ...

介紹好用 Visual Studio 2010 擴充套件:VS10x Code Map v2

在 Visual Studio 2010 裡寫程式雖然有語法高亮度顯示,但是在開啟檔案後閱讀較大的程式碼檔還是不太方便,因為你無法快速的理解目前該檔案的程式碼結構,例如說該檔案裡有幾個類別、幾個介面、彼此有繼承關係、幾個註解或 #region 等等,但我們透過 VS10x Code Map v2 這個擴充套件便可透過不同的顏色、圖示得知目前程式碼的結構,只要你跟他混熟了,相信你可以不用看完整份原始碼就能知道目前程式碼的結構,對需要 Code Review 的人來說可謂是必備工具!

... 繼續閱讀 ...

Visual Studio 2010 如何改用 WinMerge 作為 TFS 的比較工具

我們以前在使用 Subversion 的時候就會換掉內建的 TortoiseMerge 改用 WinMerge 做為差異比較的工具,以前也寫過一篇【介紹好用工具:WinMerge】文章介紹過。最近改用 TFS 進行版本控管之後,說實在的還是習慣使用 WinMerge 來做差異比較,也因此研究了一下設定的方法,以下是設定的方法筆記。

... 繼續閱讀 ...

介紹好用 Visual Studio 2010 擴充套件:Regex Editor

在 Visual Studio 2010 的線上擴充套件裡有個 Regex Editor 小工具,安裝好之後可以讓你在 Visual Studio 2010 程式編輯區撰寫 Regex 類別程式時自動跳出 Regex 編輯管理視窗,讓你可以在一個工具視窗中編寫、測試、管理你所撰寫的 正則表達式 (Regular Expression),這工具雖然是簡單的小東西而且很容易讓你忘記他的存在,但不小心開啟編輯視窗時還是會覺得很貼心的。

... 繼續閱讀 ...

介紹好用工具:NDepend ( .NET 程式碼品質分析的利器 )

專案越來越大,也越來越難一眼看出專案潛在的品質問題,這時必須利用一些第三方工具幫我們進一步分析 .NET 專案 (或整個方案),而這套 NDepend 正是一個極其優異的產品,對於一些多人開發的專案或是有點龐大或複雜的專案,都能利用 NDepend 幫我們做品質分析,甚至於可以跟 TFS 或其他 CI 整合進開發流程,透過自訂規則確保專案在開發的過程中都能有效維持一定的程式碼品質。

... 繼續閱讀 ...

Visual Studio 2010 無法使用資料連接與結構描述比較的問題

昨天在公司內部分享 Visual Studio 2010 資料庫專案開發密技,但在現場展示功能時 Visual Studio 2010 卻頻頻出包,我使用了這麼多年卻給我在重要時刻發生失誤,害我臨時換了台電腦做展示,還好不影響整體上課品質,公司同事也都反應非常熱烈,深刻感受 Visual Studio 2010 資料庫專案的強大魅力!上完課之後我依然心有不甘,最後還是將問題順利解決,以下是我修復這次問題的筆記。

... 繼續閱讀 ...

Visual Studio 2010 操作技巧系列:常用功能心得筆記

在去年的 Microsoft Tech‧Days 2010 我曾經寫過一篇 Visual Studio 2010 的操作技巧文章在每個人都會拿到的資料袋裡,不過似乎不是很多人看過,因此決定將文章放到部落格上供大家參考學習,要做好開發工作絕對不能不熟悉每天都在使用的開發工具,對工具的掌握度越高,相對的工作效率也就越高,也越能夠專注在更有創造力的事情上!

... 繼續閱讀 ...

使用 Visual Studio 2010 Ultimate 及 Agent 進行負載壓力測試

在 Visual Studio 2010 Ultimate 裡,其實不用特別安裝 Visual Studio Agent 2010  就能進行負載壓力測試 (也只有 Visual Studio 2010 Ultimate 才能使用負載壓力測試功能),不過若真要進行大流量的負載壓力測試,一台主機可能過於單薄,這時我們就需要安裝 Visual Studio Agent 2010 的 Test Controller 與多台 Test Agent 透過多台主機一起對 測試中系統 (System Under Tests) 進行負載壓力測試,如此一來才能真正看出系統在高壓之下是否還能符合效能需求以及是否能夠穩定運作。Visual Studio Agent 2010 的安裝設定有許多注意事項,在本篇文章裡我將會搭配文章與錄影的方式讓第一次使用 Visual Studio Agent 2010 的人能夠快速且正確的將環境建立起來。

... 繼續閱讀 ...

資料庫專案無法寫入目標資料庫時的解法 (調整欄位大小時)

Visual Studio 2010 Premium 企業版 資料庫專案 功能在進行 結構描述比較 (Schema Compare) 時,當你的來源資料庫特定表格某個欄位的欄位大小變更時(變小)可能會引發「無法成功更新目標結構描述。如需詳細資訊,請參閱 [錯誤清單] 視窗。」的錯誤(The target schema could not be updated successfully. For more information, see the Error List window.),此時就必須用今天的方法來解決。

... 繼續閱讀 ...