Читать конфигурацию IIS7 из веб-приложения? - PullRequest
1 голос
/ 22 мая 2009

Вот что я хочу сделать:

Сначала мое веб-приложение работает очень медленно, пока все страницы не будут предварительно скомпилированы и кэш не заполнен. Я хочу «прогреть» приложение в Global.asax, запустив несколько HTTP-запросов на самых медленных страницах.

Проблема в том, что я не знаю, на каком порту запущено приложение. Может быть 80 (мой локальный IIS или развернутый сервер, 8080 на нашем тестовом сервере или какой-то случайный порт для некоторых коллег, которые используют сервер разработки ASP.NET)

Я подумал, что было бы довольно просто прочитать объединенную веб-конфигурацию, извлечь привязку, создать URL и инициировать запрос с помощью HttpWebRequest.

Однако мне не повезло ... (я в основном пробовал WebConfigurationManager)

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 13 июня 2009

Думаю, вы сможете получить эту информацию из объекта Request.

Тем не менее, я бы не стал беспокоиться об этом без каких-либо веских доказательств со стороны производства, что это на самом деле проблема.

0 голосов
/ 22 мая 2009

Если у вас есть доступ к объекту Page (я не уверен, что вы делаете это в global.asax, поскольку я никогда не использую его в своих приложениях), тогда вы можете использовать его метод ResolveUrl (string path) для получения правильного URL, например

string myurl = Page.ResolveUrl("~/MyPage.aspx");

Где ~ / относится к корню приложения ASP.Net

...