Могу ли я использовать абсолютный URL-адрес в теге html img в приложении IIS7 ASP.NET?

При переносе приложений интрасети ASP.NET с IIS6 на IIS7 я столкнулся с проблемой с абсолютными URL-адресами в тегах html: я не могу заставить их рассматривать приложение как корень URL-адреса, если приложение не опубликовано в корневом каталоге. Веб-сайт.

Вот фрагмент кода, демонстрирующий проблему. Он публикуется в приложении в разделе «Веб-сайт по умолчанию».

Первые два изображения отображаются в браузере. В третьем нет:

<body>
    <form id="form1" runat="server">

        Absolute path using asp image control: 
        <asp:Image ID="Image1" runat="server" ImageUrl="~/images/image.png" /> 

        Relative path using html img tag:  
        <img alt="Works just fine" src="images/image.png" />

        Absolute path using html img tag:   
        <img alt="WTF?" src="/images/image.png" />

    </form>
</body>

Все три изображения отображаются правильно при запуске на локальном хосте.

Проблема в том, что «/images/image.png» ищет каталог с именем «images» на веб-сайте по умолчанию, а не в приложении.

Есть ли способ настроить приложение так, чтобы его корень совпадал с корнем для URL-адресов html? Любая помощь в этом очень ценится!

  • Крис

person Chris Maddi    schedule 14.04.2010    source источник


Ответы (1)


Вы также можете достичь того, чего хотите, используя

<img alt="This works, too." src="images/image.png" runat="server" />
person David Peden    schedule 08.02.2011