剛接手一個 VS2010 的專案,想說都是同樣的開發工具所開發的,應該沒什麼問題吧!結果專案一打開,竟跳出個我很陌生的錯誤訊息,然後該專案就無法開啟。
錯誤訊息如下:
The local IIS URL http://localhost/XXX specified for Web project XXX has not been confiured. In order to open this project the virtual directory needs to be configured. Would you like to create the virtual directory now?
從錯誤訊息看起來,是因為這個專案是採用 Web Site 模式開發,但在我的 IIS 裡面找不到相對應的虛擬目錄。原來這專案當初在命名時,可能使用 OOO,但對應的網站虛擬目錄卻是用 XXX,難怪我一開始根據專案名稱來建虛擬目錄時會建錯。
這時候有兩個解決方法,第一個最簡單,就是去更改 IIS 的設定,將 IIS 的虛擬目錄名稱改為 XXX。第二個,則是自己比較陌生的方法,但其實也不難。只要在無法載入的專案上按右鍵,就會出現 Edit OOO.csproj 的選項,點選進去後,會出現一份 xml 格式的設定檔,找到 <IISUrl>,把他註解掉(mark)或改成 http://localhost/XXX ,再重新載入一次專案就可以了。
是不是採用註解 (mark)掉的方式,差別在於:
用註解掉(mark)的方式,程式在執行時,他會透過虛擬一個網站的方式,以 http://localhost:1234/XXX 來呈現。
<!--<IISUrl>http://localhost/XXX</IISUrl>-->
但如果你的 IIS 裡早就已經設定好網站路徑,則可以將 OOO.csproj 裡的 IISUrl 改成正確的位置即可。程式執行實則會是: http://localhost/XXX
參考:The local IIS URL specified for Webproject has not been configured.