Как создать файлы конфигурации для конкретного сайта при запуске нескольких сайтов ASP.NET на одной базе кода? - PullRequest
1 голос
/ 30 сентября 2011

Я хочу создать 2 сайта на одной кодовой базе в asp.net. скажем так:

www.domain1.com

www.domain2.com

Мне нужно, чтобы все имена ключей appsetting были одинаковыми, но с разными значениями для каждого из веб-сайтов. Поэтому мне нужно поддерживать два файла web.config в моей кодовой базе.

После изучения Интернета я обнаружил, что оба файла web.config хранятся в разных папках в базе кода.

Но проблема в том, как я могу связать каждый отдельный файл web.config с соответствующим ему виртуальным каталогом для каждого веб-сайта, поскольку оба виртуальных каталога будут нацелены на одну и ту же папку базы кода.

Я действительно нуждаюсь в этом, поскольку я должен закончить эту работу в течение этой недели.

Спасибо

1 Ответ

1 голос
/ 30 сентября 2011

Если вы действительно хотите обслуживать оба сайта из одного приложения / виртуального каталога, единственное решение, которое я могу предложить, заключается в следующем:

<appSettings>
  <add key="setting[www.domain1.com]" value="foo" />
  <add key="setting[www.domain2.com]" value="bar" />
  ...

И затем получить к ним доступ соответственно:

var setting = ConfigurationManager.AppSettings["setting[" + request.Domain + "]"];
...