Server.MapPath генерирует неправильный URL - PullRequest
0 голосов
/ 30 августа 2018

Следующий код выбирает URL изображения (imgURL) из базы данных sql в View:

<img src=@Server.MapPath(item.imageUrl); />

После Html, которое он отображает для вышеуказанной строки кода в браузере, неверно:

<img src="D:\Visual" studio="" projects\onlinestore\onlinestore\images\products\dry\baking="" goods\dalda.jpg;=""> 

Правильно Html должно быть:

<img src="D:\Visual studio projects\onlinestore\onlinestore\images\products\dry\baking goods\dalda.jpg;="">

Может кто-нибудь, пожалуйста, руководство?

Ответы [ 2 ]

0 голосов
/ 31 августа 2018

У вас 2 вопроса.

Сначала значение атрибута должно быть заключено в кавычки (HTML-код, который вы видите, потому что значение содержит пробелы - в каждом пробеле атрибут заканчивается и создается новый (недействительный) атрибут)

Во-вторых, вам не нужно @Server.MapPath() (и это не должно использоваться в любом случае в представлении). Значения свойства imageUrl должны быть в формате

"/images/products/dry/baking goods/dalda.jpg"

, а затем в виде его

<img src="@item.imageUrl" />
0 голосов
/ 30 августа 2018

Попробуйте

var pathOnDisk = HttpContext.Current.Server.MapPath(uri.AbsolutePath);
var decoded = HttpContext.Current.Server.UrlDecode(pathOnDisk);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...