Visual Studio | The Will Will Web

The Will Will Web

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

如何在 Visual Studio 2010 發生錯誤時進行問題分析與解決

今天開啟 Visual Studio 2010 的時候發現有些功能開始不能用了,費了一番功夫才找到問題是出在 Visual Studio 2010 內建的 SQL Server Database Publishing Wizard 1.4 被莫名原因移除了 (猜測跟我前天移除 Visual Studio 11 Beta 有關),我在【如何利用「資料庫發行精靈」將新版 SQL 資料庫降級成舊版】這篇文章曾經提過我找不到有可獨立下載的地方,但我又實在不願意重裝一次 Visual Studio 2010 + SP1,所以花了一個小時把這個問題解決,順便在此分享 Visual Studio 2010 抓錯誤的心得。

... 繼續閱讀 ...

NuGet 1.6 提供的新功能:啟用 NuGet 套件自動回復

我們之前常遇到一個狀況,當開發人員把方案/專案被建立並加入到 TFS 進行版本控管後,然後很開心的使用 NuGet 功能加入套件,不過卻忘記把 packages 也一併加入到 TFS 原始碼控管裡,以致於其他開發源開專案時變的無法管理 NuGet 套件的情況,這個問題到了 NuGet 1.6 開始已經獲得了改善,你現在可以使用 Enable NuGet Package Restore 功能徹底解決這個問題。

... 繼續閱讀 ...

活用 Visual Studio 2010 組態管理員進行方案與專案組態管理

早在之前的 Visual Studio 就已經內建了組態管理員 (Configuration Manager),但我發現真正在使用組態管理員的人並不多,這是一個非常好用的方案管理工具,在很多情況下我們會因為某些狀況而需要對方案裡某些專案的程式碼進行一些調整才能正常執行,總不能每次換個開發環境就得辛苦的改一次,這時我們就可以藉助新增或修改 組態管理員 裡的 方案組態 (Solution Configuration) 達到快速切換的目的。

... 繼續閱讀 ...

Visual Studio 2010 Express 缺少的功能與開啟方案檔的差異

前陣子有個玩 PHP 的朋友提及:「為什麼 Visual Studio 2010 這麼難用」,聊到後來才發現原來他安裝的是 Visual Studio 2010 Express 版,自然少了許多功能,然而到底少了哪些功能我也說不清。上個週末開啟一個 Windows Phone 7 範例程式,發現竟然開啟的是 Visual Studio 2010 Express 版,我明明記得我安裝的是 Visual Studio 2010 Ultimate 版啊,最後索性就「體驗」一下所謂的 Express 版到底缺了哪些東西。

... 繼續閱讀 ...

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

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

... 繼續閱讀 ...

NuGet 套件: .NET Framework Extensions Packages (netfx)

以往我們要使用一些現成的工具函式庫時,都會去網路上找一些好用的原始碼回來用,但是當作者改版或修掉一些 Bugs 之後我們並不會主動收到通知,就算是公司內部的函式庫一樣會有版本控管的問題,但是若能透過 NuGet 來幫忙做控管,未來所有專案都能夠享受到自動更新這些工具函式原始碼的服務,而最近就興起一個 netfx 專案整理了許多小片段的原始碼,讓你可以輕易的將這些原始碼透過 NuGet 套件管理員下載到專案中,並可在未來自動更新,方便管理這些下載的原始碼。

... 繼續閱讀 ...

ASP.NET MVC 建置部署套件後無法 MvcBuildViews 的解法

我去年寫過一篇【Visual Studio 2010 建置部署套件與 ASP.NET MVC 的衝突】文章,雖然當時已經知道怎麼解決,但是每次在 發行網站 (Publish) 或 建置部署套件 (Build Deployment Package) 後都要手動刪除 obj 目錄實在覺得很麻煩,今天狠下心研究出一個方法可以在 MvcBuildViews 之前「自動」刪除 obj 目錄裡那些會阻礙建置步驟的相關檔案。

... 繼續閱讀 ...

如何讓 App_GlobalResources 裡的全域資源檔變成公開類別

在中大型的專案裡,通常會將一整個 Visual Studio 方案 (Solution) 切分為好幾個專案 (Project),在製作多國語系網站時有時也會想把資源檔移到另一個獨立了專案中,如此一來才能方便在日後更新這些多國語系資源設定,不過在 Visual Studio 裡面的 ASP.NET 專案新增資源檔時,其類別的存取等級預設為 internal class,如果直接拖曳到另一個專案就會導致在原本的專案無法存取到這個資源檔的情況,必須進一步設定才行。

... 繼續閱讀 ...

TFS 版本控管心得筆記:如何大量更新不受版本控管的檔案

我們現在有許多專案都改用 TFS 進行版本控管,想說跟 Visual Studio 2010 整合的非常好,比較不會遇到新手上路時的問題,但事實上還是會遇到一些棘手的問題,例如說你自己在檔案總管裡對那些受 TFS 版本控管的檔案所做的任何操作 (更名、修改內容、新增檔案、刪除檔案、…),都不會反映到 Visual Studio 2010 暫止的變更 之中,所以你必須完全依賴 Visual Studio 2010 操作這些受版本控管的檔案,有時候這一點還蠻不方便的,還好我研究出了一個方法能夠在 Visual Studio 2010 裡大量更新那些不受版本控管的檔案,真的超級實用的。

... 繼續閱讀 ...

嘗試執行專案時發生錯誤: 無法在Web伺服器上啟動偵錯。

在 2011 年的今天,我們又再度接手了一個 ASP.NET 1.1 的網站維護,而在開發主機都正常運作了幾個月之後卻又再度遇到鬼打牆的問題,而且這個錯誤訊息真的會讓人丈二金剛摸不著頭緒【嘗試執行專案時發生錯誤: 無法在Web伺服器上啟動偵錯。無法啟動 ASP.NET 或 ATL Server 偵錯。 請確認該伺服器已正確安裝 ASP.NET 或 ATL Server。】,我跟他奮鬥了五個小時才弄清楚問題發生的主因。

... 繼續閱讀 ...

如何將 ASP.NET MVC 相依的組件一起部署到 Bin 目錄下

有寫 ASP.NET MVC 的人應該瞭解,當部署 ASP.NET MVC 網站時通常都必須先在伺服器端安裝 ASP.NET MVC 執行環境 (Runtime) 才能正常執行,這個安裝的步驟主要是將 ASP.NET MVC 組件註冊進 GAC (Global Assembly Cache) 中,這點安裝步驟其實還算容易,不過並不是所有系統管理者都願意幫你做這一步,所以若要將組件一一內嵌到 Bin 目錄下就必須特別設定,但 ASP.NET MVC 3 with Razor Syntax 的設定比 ASP.NET MVC 2 的設定複雜許多,今天我就來教各位一個最無腦的設定法,又快又精準的一次設定到好!

... 繼續閱讀 ...

ASP.NET 開發人員應使用 IIS Express 進行開發與測試

IIS 7.5 Express 是一套針對 ASP.NET 開發人員特別設計的 IIS 7.5 版本,我發現有許多人並不知道他的存在,甚至於不知道何時要使用他,就覺得這只是另一個提供 ASP.NET 執行環境的程式而已,在 Visual Studio 2010/2008/2005 內建的 ASP.NET 開發伺服器 (Cassini) 已經使用很久,用來作為開發測試之用也沒什麼問題,有必要將開發環境的伺服器修改成使用 IIS 7.5 Express 來執行嗎?今天我就提出幾個重要的觀點。

... 繼續閱讀 ...