2013-02-05 37 views
15

我的情況:
我正在研究ASP.NET MVC項目並在IIS-Express中進行調試。有時當我們創建一個臨時分支時,這個分支將使用相同的端口進行調試。這意味着IIS中的虛擬目錄是相同的,我不能同時運行它們。如何讓Visual Studio 2012檢測虛擬目錄是否需要重新映射?

它是如何使用VS2010的工作:
這是不是真的,因爲我不想在同一時間運行它們的問題。但是,在VS2010中,我第一次打開分支時會收到警告。它問我是否要重新映射URL。當我後來回來打開後備箱時,我會得到相同的警告(請參閱https://stackoverflow.com/a/3093534/210336)。 The message in vs2010

它是如何不vs2012工作:
現在在VS2012,我沒有得到警告了。如果我忘記手動進入設置並按下「創建虛擬目錄」(這發生了幾次),那麼當我點擊分支中的運行時,它將實際運行中繼。這可能非常混亂。特別是如果我嘗試調試或系統中斷例外。分支解決方案中將打開trunk的源文件。然後我認爲我正在編輯分支,但我實際上正在編輯主幹... The button in VS2012 that I need to press

有沒有辦法讓VS2012執行與VS2010相同的檢查?

還是我在做/理解別的完全錯誤?

+2

你有沒有找到一個解決這個? – RMK

+0

好奇 - 如果您以管理員身份運行VS,行爲是否有區別? –

+0

@RMK,還沒有。我們已經轉移到Azure,所以我正在運行模擬器,我似乎沒有這個問題。然而,我發現它的工作原理與我最初的想法有點不同。實際上,當你打開一個解決方案時,它會映射所有的東西(就好像你按下了所有的提示)。因此,您打開的最後一個解決方案將是實際的解決方案,而不是您映射所有內容的第一個解決方案。 –

回答

1

VS實際上編輯這些路徑

%userprofile%\documents\iisexpress\config\applicationhost.config 
%userprofile%\my documents\iisexpress\config\applicationhost.config 

的一個發現。當留給了VS的IIS Express配置文件,我傾向於把重複和衝突的配置。

對於本地開發,我更喜歡從cmd或powershell腳本啓動IIS Express,因爲它不需要附加(但可以附加)並使我可以控制配置。我製作了iis配置的副本,並在iis express命令中指定了配置文件。我有一個powershell腳本,它根據執行目錄設置路徑,因此無論哪個分支,它總是設置爲我正在工作的那個。

以下是有關從命令行運行iis express的信息:

http://www.iis.net/learn/extensions/using-iis-express/running-iis-express-from-the-command-line

這裏是運行IIS的一個很好的資源從PowerShell中表示:

https://blog.differentpla.net/post/UaYcAPDfiVJBAAAC/running-iis-express

相關問題