如果有一些存储在数据库中的HTML。我在我的视图文件中使用以下代码渲染HTML。
@Html.Raw(Model.Content.ToString())
这个工作正常,除了一个问题,图像路径没有正确呈现。在我的HTML(存储在数据库中)中,图像定义为:
<img src="~/images/logo.png" />
但是当在HTML中呈现时,它会在未显示图像的路径之前附加网站的URL。
http://www.hostname.com/~/images/logo.png
如果需要任何其他信息,请发表评论。 谢谢你的时间。
答案 0 :(得分:2)
通常Razor会解释"~/images/"
并将其转换为相对路径。因为您自己呈现HTML(在Model.Content.ToString()
中),所以您正在跳过此功能。
如果需要将HTML存储在数据库中,则可能不应使用~/images/
语法。如果您将始终在网站的根目录中发布您的应用程序,那么只需使用/images/
(例如www.mysite.com/images而不是www.mysite.com/myapp/images)