Не удалось найти изображения в веб-приложении .NET - PullRequest
2 голосов
/ 19 января 2012

Я держу HTML-содержимое страниц в базе данных.В зависимости от ситуации я получаю HTML-контент из базы данных и помещаю его на страницу.

Пример содержимого:

<p>
Test Content
<img src="~/images/test.jpg" />
</p> 

Проблема в ~ не работает, как я ожидал.Как настроить ~ для работы в качестве абсолютного пути веб-приложения к любому из файлов, например, в .css, .aspx, чтобы он отображался как www.test.com/images/test.jpg?

Согласно ответам:

У меня есть контент, который находится в базе данных, поэтому изображение 'src or anchor' href отображается как HTML-контент, даже если я добавлю его runat = server.Так что я должен сделать, прежде чем помещать строку на страницу aspx, я должен запустить функцию и передать это содержимое в качестве параметра.Затем укажите абсолютный путь к веб-сайту для любых тегов src или href, где есть ~.Это может быть сделано с помощью регулярных выражений.

Ответы [ 3 ]

1 голос
/ 19 января 2012

Для связывания содержимого CSS вы можете следовать указаниям относительного пути HTML ниже,

 ../filename  - links up one directory
 ../../filename - filename is located two directories up
 /filename - domain name root
 filename - file is in current directory
 folder/filename - file is located in folder sub-folder

Для HTML на страницах .aspx вы можете использовать,

 //WebForms
 src="<%#VirtualPathUtility.ToAbsolute("~/filename")%>"

 //MVC 
 src="<%=Url.Content("~/filename")%>"
0 голосов
/ 19 января 2012

Пожалуйста, добавьте

Runat = Сервер

- атрибут img

0 голосов
/ 19 января 2012

просто удалите "~", который вы всегда можете указать на корень сайта, используя "/"

Так просто

<p>
Test Content
<img src="/images/test.jpg" />
</p> 
...