[英]Single Website Directory / Multiple IIS Websites (Multiple web.config files)
我繼承了一些非常古老的ASP代碼。 因此,我需要解決一個設計問題,如下所述。
我有3個客戶... Foo,Bar和Baz。
我有一個名為...的文件夾
C:\\網站已\\ Site.v15.07
我在IIS中有3個網站定義為...
Website.Foo
Website.Bar
Website.Baz
它們都指向15.07目錄。
還有3個其他文件夾,稱為...
C:\\ WebConfigurations \\富
C:\\ WebConfigurations \\酒吧
C:\\ WebConfigurations \\巴茲
...都包含3個站點中每個站點的客戶端特定文件。 上傳的圖片等
這3個客戶中的每一個都有自己的網站所在的數據庫。
我需要為3個站點中的每個站點設置(理想情況下,使用web.config)連接字符串。
如果將其放在網站目錄根目錄下的web.config中,它們將共享相同的設置。
有沒有一種方法可以在IIS的“網站”級別上添加settings / web.config,以便可以對每個網站進行不同的設置?
僅將通用配置放在應用程序文件夾中的Web.config
中。
首次加載應用程序時,以編程方式從相應的文件夾加載特定於客戶端的配置文件,並以編程方式將信息合並到內存中的配置信息中。
以編程方式在內存中編輯配置信息的示例:
var configuration = WebConfigurationManager.OpenWebConfiguration("~");
var section = (ConnectionStringsSection)configuration.GetSection("connectionStrings");
section.ConnectionStrings["MyConnectionString"].ConnectionString = "Data Source=...";
在您的情況下,您需要兩次調用WebConfigurationManager.OpenWebConfiguration
,一次調用打開應用程序配置,一次調用加載客戶端配置。 然后將數據從客戶端配置復制到內存應用程序配置中(不要根據所引用的問題調用Save()
,這是一種不同的用例)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.