我是MVC的新手,所以请原谅我!我有以下几行 Views / Home / Index.cshtml文件:
<div class="grid-content" style="background-image: url('~/Content/pics/mypic.jpg');">
(_Layout.cshtml使用标准的RenderBody()调用渲染它。)
但它不会显示图片。如果我用一个完整的合格路径替换路径到互联网图片,它将工作。它不适用于上述语法。
在我看来,它可能与单/双引号的多种用途有关,也许。
有没有办法让它起作用?我还没有学会如何使用Url.Content或其他一些辅助方法。
有什么建议吗?
答案 0 :(得分:0)
您传递的url()
是来自您的网络服务器的资源路径,相对于调用页面或绝对URL。
您提供的示例看起来像文件系统路径,而不是您的Web服务器理解的URL,这就是“互联网图像”的完全限定URL工作的原因。
您的文档存储在Views/Home/Index.cshtml
中。如果图像存储在同一文件夹中,则只需将其更改为url('mypic.jpg')
即可。如果没有,请相应调整。
将路径从~/Content/pics/mypic.jpg
更改为与您所服务的文档相关的内容。例如,如果是HTML
(是的,网址可以包含波浪号,但通常它们会指定“以下是系统用户名”,例如/~Coreysan/Content/pics/mypic.jpg
,它会指示您的网络服务器找到您的~/<whatever your web server folder is>/Content/...
资源。