簡體   English   中英

Visual Studio 2013,IIS,IIS Express-錯誤?

[英]Visual Studio 2013, IIS, IIS Express - bug?

ASP.NET C#項目不會加載並顯示錯誤:

為Web項目'AndroidWS'配置的URL'http :// localhost:51752 / '的站點在本地IIS Web服務器和IIS Express Web服務器上均存在。 您需要使用IIS管理器來更改IIS中此站點的綁定。

如果我刪除

<site name="AndroidWS" id="1"> ... </site>

在IIS Express配置文件中,出現另一種錯誤:

Web項目'AndroidWS'的URL'http :// localhost: 51752 /'已配置為使用IIS Express作為Web服務器,但是當前在本地IIS Web服務器上配置了URL。 若要打開此項目,必須使用IIS管理器從本地IIS Web服務器中刪除使用此URL的綁定。

但是此項目未配置為使用IIS Express:

<UseIISExpress>false</UseIISExpress>
<UseIIS>false</UseIIS>

打開此項目的唯一方法是設置:

<UseIIS>true</UseIIS>

好的,這是一種解決方法,但是由於我們的團隊工作流程,我對此不太滿意-我必須在每次入住之前將此參數設置回false。

PS。 所有項目都重復這種情況-Visual Studio表示將它們配置為使用IIS Express,但事實並非如此。

刪除csproj.user就可以了。 訊息

“ xxx被配置為使用IIS Express作為Web服務器,但當前在本地IIS Web服務器上配置了URL。要打開此項目,必須使用IIS管理器從本地IIS Web服務器上使用此URL刪除綁定。”

之所以會產生誤導,是因為沖突的信息不在IIS中,而在csproj.user文件中。

  1. 在Visual Studio中創建WebApplication類型的項目時,對於服務器,有三個選項,即UseIISExpress,UseIIS和ExternalHost。 (如果未安裝IIS,則只有2個選項,即IIexprss和External Host)
  2. 因此,基本上,您必須從這三個選項中選擇一個選項。 默認值為IISExpress。 您不能在項目文件中將所有服務器選項設置為false。 即使您執行該操作,Visual Studio也會假定默認選項即IISExpress已啟用。
  3. 如果您需要在團隊其他成員使用IISExpress時使用本地IIS,則可以從服務器下拉列表中選擇“本地IIS”選項,然后取消選中位於服務器下拉列表上方的“將服務器設置應用於所有用戶”復選框。 這會將配置設置保存在.csproj.user文件中,您無需將其檢入源代碼管理。 這樣,您將使用本地IIS,而團隊將繼續使用IIS Express。

從IIS管理器中刪除了所有站點,“默認網站”除外,現在一切正常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM