Я использую перезапись URL-адресов в ASP.NET 4 (используя ISAPI_Rewrite) и обнаруживаю, что некоторые из моих изображений не загружаются, поскольку .NET, похоже, не понимает, что я использую HTML-тег BASE (довольно стандартно и необходимо при перезаписи URL):
Например, в моей среде разработки у меня есть:
<base href='http://localhost/venuefinder/Website/'></base>
и на моих страницах у меня есть:
<asp:ImageButton runat="server" ImageUrl="~/images/button.gif" />
На домашней странице сайта (http://localhost/venuefinder/Website/) это работает нормально, однако на странице, которая использует перезапись URL, изображение не работает:
/venuefinder/Website/venues/ashton_gate_stadium/V18639/
.. как браузер пытается загрузить:
http://localhost/images/buttons/search-button.gif
вместо:
http://localhost/venuefinder/Website/venues/images/buttons/search-button.gif
Это происходит потому, что .NET отображает кнопку как:
src="../../../images/buttons/search-button.gif"
... что неверно.
Можно ли как-то исправить эту проблему, чтобы .NET отображал правильный атрибут src для изображения? (без всего ../../../ и т. д.)