Корневая ссылка на IIS для веб-приложения не работает, ASP.NET 4.0 - PullRequest
1 голос
/ 20 октября 2011

У меня странная проблема с IIS.

На моем веб-сервере у меня есть веб-приложение. По сути, я преобразовал папку в приложение, и я предполагаю, что все сделал правильно. Я также ознакомился с инструкциями Microsoft по ссылке ниже, чтобы убедиться, что ничего не пропустил:

http://msdn.microsoft.com/en-us/library/ha2y9493.aspx

Во всяком случае, сейчас, в моем приложении,

Это не работает:

<img src="/images/7eleven.png" />

но это работает:

<img runat="server" src="~/images/7eleven.png" />

Мой физический путь выглядит так:

\\server\apps\myapplication\images

myapplication - это веб-приложение .NET 4.0, и я ожидаю, что это будет корень приложения.

Но, насколько я вижу сейчас, это root только для серверных элементов управления, когда используется runat = "server". Есть ли лекарство от этого?

Спасибо.

Ответы [ 2 ]

2 голосов
/ 20 октября 2011

Является ли корень вашего сайта в IIS \\server\apps\myapplication\? Насколько я могу судить по вашему вопросу, это корень приложения, но вы не сказали, что это корень сайта.

Клиенты не знают о границах приложения, поэтому, если у вас нет \\server\apps\myapplication\ в корне вашего сайта, абсолютный URL в разметке первого примера не будет работать.

Решение проблемы - использовать серверный элемент управления или кодовый блок для введения правильного пути в img src, как во втором примере.

0 голосов
/ 20 октября 2011

Я думаю, что лучше использовать Server.MapPath("~")

Это объяснит это далее Пути веб-проекта ASP.NET

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...