2017-03-01 176 views
17

我已經注意到,在Visual Studio 2017 RC中創建新的ASP.NET Core Web APP時,不會創建web.config文件。我的理解是,該文件包含促進IIS集成的重要代碼,這是我感興趣的內容,因爲我想在IIS上運行此應用程序。在VS 2017 RC中創建ASP.NET Core Web App時缺少web.config?

這是一個錯誤,或者有我錯過了在這個過程中的一個步驟?

回答

0

在ASP.Net核心我們沒有web.config中,而我們有app.config文件。在ASP.Net核心配置已經改變了很多,現在包通過Package.json文件進行管理。

如果你需要存儲一些應用程序相關的配置,那麼你可以使用appsetting.json文件。

參考:https://zimmergren.net/using-appsettings-json-instead-of-web-config-in-net-core-projects/

+5

package.json用於管理NPM依賴關係,這在技術上不屬於ASP.NET Core的一部分。 Nuget軟件包現在在* .csproj文件中進行管理。 – Jimmy

+7

我們通過web.config配置的IIS設置如何? –

+1

@Brijesh我沒有看到我的VS2017 ASP.NET核心1.1應用程序中的app.config。我在哪裏可以找到它?我甚至點擊了「顯示所有文件」圖標,但沒有運氣。 – nam

10

在ASP.NET 1.1核心Web項目由Visual Studio 2017年創建的,所以在默認情況下沒有更多的web.config文件。如果你需要這個文件,你可以自己創建該文件。 例如:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <system.webServer> 
    </system.webServer> 
</configuration> 
+1

如果您需要設置Windows身份驗證,請參閱[此](https://developercommunity.visualstudio.com/content/problem/26751/publish-aspnet-core-to-iis-with-windows-authentica.html)頁面IIS。手動創建web.config並添加forwardWindowsAuthToken屬性是我能夠實現它的唯一方法。 –

1

這是不是直接回答你的問題,但我想張貼此解決方案,因爲它有關。

今天,我發現VS2017拒絕開始我的web應用程序,因爲它說,它無法找到一個web.config文件。

錯誤消息顯示了它正在搜索web.config的路徑,但它是我的筆記本電腦上從未存在過的文件夾(我已從外部公司發送代碼)。更糟糕的是,我們的項目甚至沒有包含web.config文件,所以錯誤沒有意義!

我花了年齡試圖解決這個問題,通過IIS快遞與VS2017報道,以及解決辦法是荒謬的:

我不得不增加我的代碼是在運行的端口號。

就是這樣。

這是IIS/VS2017的錯誤嗎?我不知道。但今天早上我浪費了很多時間。和重命名以下文件夾的方式進行,由其他StackOverflow的文章建議,並沒有幫助:

C:\Windows\System32\inetsrv\config 

再次道歉 - 這不是直接回答這個問題,但我敢肯定,我會不會跌倒在此網頁上,接受這一離奇「Can't find web.config」錯誤後的唯一的人,所以我認爲這是這裏記錄有用的。

4

對於Asp.Net 2.0的核心,你仍然需要有web.config中,你可以添加Web配置項目模板。 您可以使用,如更改最大文件上傳限制等。

當您發佈項目時會生成web.config文件。

相關問題