2013-07-12 56 views

回答

4

他們所有的.NET的XML配置文件,與他們一起工作的API調用System.Configuration(它是不是最容易的工作,很遺憾)。

machine.config設置 Windows上的安裝運行(相同CLR版本)所有.NET應用程序的配置(即,一臺計算機機器)。該文件存儲在%windir%\Microsoft.NET\Framework\%version%\CONFIG下。 (請注意,.NET 3.0和3.5沒有自己的machine.config,因爲它們使用2.0 CLR)。

applicationHost.config設置了IIS的配置,然後通過IIS」子對象(諸如網站和應用程序池)繼承。該文件位於IIS的文件夾,‘真正的’IIS這是%windir%\system32\inetsrv\config,對於IIS快遞這是%programfiles%\IIS Express\AppServerYou can read more on MSDN

web.config最初是ASP.NET特定的,用於在每個應用程序和每個目錄基礎上設置配置。如果他們是在一個應用範圍的根web.config文件(IIS中的「魔法」類型的文件夾中,bin目錄生活也是其中)

  • 某些配置項纔會生效。
  • 在IIS7.0和後來的web.config文件還用於存儲本地IIS配置作爲替代applicationHost.config,例如,如果你想直接存儲在文件系統配置(這樣你就可以物理地移動目錄樹和維護配置時無需更改applicationHost.config - 直接或使用IIS管理器)。
    • 你可以直接IIS管理器中使用「配置編輯器」選項,使用web.config中,而不是在的applicationHost.config在功能樹節點查看。
  • 配置由孩子目錄繼承和可重寫(所以如果/foo有一個web.config文件,然後/foo/bar都可以有自己的web.config重寫或擴展了/foo的配置定義設置。
    • 令人困惑的是,裏面還有<location>元素,它可以讓你設置,並從父母的配置文件中重寫目錄的子配置。

app.config不是一個實際的文件名(除非在開發過程中),並指用於臺式機和控制檯應用程序特定的EXE的配置。該配置文件住在同一文件夾中*.exe本身具有相同的名稱爲程序(例如「MyProgram.exe」將有一個名爲「MyProgram.config」配置文件)。當它在構建過程中部署配置文件時,Visual Studio將「app.config」重命名爲「MyProgram.exe」。 App.config不會將 應用於ASP.NET項目。

相關問題