Как найти местоположение корневого каталога веб-приложения в моем приложении? - PullRequest
0 голосов
/ 29 ноября 2018

Список установленных приложений из Реестра, часто, извлекается отсюда

Software \ Microsoft \ Windows \ CurrentVersion \ Uninstall

Расположение программ может бытьизвлекается из релевантного подраздела «InstallLocation».Однако это, похоже, не относится к окнам и веб-сервисам.

Местоположение служб Windows можно получить из

SYSTEM \ CurrentControlSet \ Services

Как найти информацию о веб-службах и их расположении в реестре?

1 Ответ

0 голосов
/ 29 ноября 2018

Microsoft.Web.Administration.dll может использоваться для запроса IIS, вы можете делать такие вещи, как,

  1. Получить список всех веб-сайтов
  2. Получить информацию о конкретном веб-сайте
  3. Получить информацию о веб-приложениях на веб-сайте
  4. Получить информацию о привязке в приложении
  5. Создать / изменить и т. Д. Веб-сайт ....

Простым примером использования будет

private ServerManager serverManager
        {
            get
            {
                if (_serverManager == null)
                        _serverManager = new ServerManager();


                return _serverManager;
            }
            set { _serverManager = value; }
        }

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

var site = serverManager.Sites.First(x => x.Name.ToLower() == siteName.ToLower());

, где вы можетеполучить имена сайтов от serverManager.Sites

Вы также можете открывать веб-конфигурации приложений и изменять их, запрашивать и т. д.

public static System.Configuration.Configuration GetConfigurationFrom(string appName, string hostName, string site)
        {
            return System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(@"/" + appName, site, null, hostName);
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...