我试图在网页上显示一个徽标。但是,它没有在浏览器中显示。图像保存在Views/Shared文件夹中。我在Views/Shared/_Layout.cshtml中有以下代码:
Views/Shared
Views/Shared/_Layout.cshtml
<img src="~/Views/Shared/sabariimg1.jpg" alt="Sample pic" />
但是,它不会显示在浏览器中,而是呈现以下内容:
yyyllmsg1#
你可以使用@Url.Content(String fileName)来拾取源文件夹中的图像文件。
@Url.Content(String fileName)
<img id="img_logo" alt="Logo" src="@Url.Content("~/Content/Images/abc.png")" />
eh57zj3b2#
图像保存在Views/Shared文件夹中。1.文件夹Views/Shared用于查看文件(.cshtml),不用于共享数据。您可以在根目录中创建一个新文件夹,如Images,用于保存所有图像。对于徽标,最好将此文件结构设置为Images/Logos或内容文件夹,如Content/Images/Logos。这不是必需的,但却是一个 * 良好的做法 *!1.要访问任何文件夹中的文件,您可以使用~,它是根应用程序的绝对路径。这意味着,要访问您的文件映像,您只需使用以下代码行:
Images
Images/Logos
Content/Images/Logos
~
<img id="mylogo" src="~/Images/Logos/myimage.jpg" alt="my image logo" class="logo" />
我认为这应该适用于任何ASP.NET Web表单或MVC Web应用程序。
2j4z5cfb3#
我犯了一个错误,如果这能帮助任何人在这个老问题我在开发过程中不假思索地将代码更改为:
<img src="../Images/filename.jpg" />
这种方法运行了一段时间,但有些视图无法加载图像我把它改回了根目录的相对路径,一切都恢复正常,因为无论哪个视图导致页面重载,它总是通过根目录路径找到图像:
<img src="~/Images/filename.jpg" />
a8jjtwal4#
您说您的图像位于共享文件夹中,因此URL不正确!!您的图像应位于 Images/Logos/ 文件夹中。
zpjtge225#
我的问题是通过将图像文件夹发布到服务器上来解决的(在VS 19中,鼠标右键单击文件夹-〉发布)
tjvv9vkg6#
我也遇到过同样的问题。我在服务器上共享了“图像”文件夹。现在图像开始显示了。我不知道它有多大帮助,但它更与这个问题有关。
6条答案
按热度按时间yyyllmsg1#
你可以使用
@Url.Content(String fileName)
来拾取源文件夹中的图像文件。eh57zj3b2#
图像保存在
Views/Shared
文件夹中。1.文件夹
Views/Shared
用于查看文件(.cshtml),不用于共享数据。您可以在根目录中创建一个新文件夹,如Images
,用于保存所有图像。对于徽标,最好将此文件结构设置为Images/Logos
或内容文件夹,如Content/Images/Logos
。这不是必需的,但却是一个 * 良好的做法 *!1.要访问任何文件夹中的文件,您可以使用
~
,它是根应用程序的绝对路径。这意味着,要访问您的文件映像,您只需使用以下代码行:我认为这应该适用于任何ASP.NET Web表单或MVC Web应用程序。
2j4z5cfb3#
我犯了一个错误,如果这能帮助任何人在这个老问题
我在开发过程中不假思索地将代码更改为:
这种方法运行了一段时间,但有些视图无法加载图像
我把它改回了根目录的相对路径,一切都恢复正常,因为无论哪个视图导致页面重载,它总是通过根目录路径找到图像:
a8jjtwal4#
您说您的图像位于共享文件夹中,因此URL不正确!!您的图像应位于 Images/Logos/ 文件夹中。
zpjtge225#
我的问题是通过将图像文件夹发布到服务器上来解决的(在VS 19中,鼠标右键单击文件夹-〉发布)
tjvv9vkg6#
我也遇到过同样的问题。我在服务器上共享了“图像”文件夹。现在图像开始显示了。我不知道它有多大帮助,但它更与这个问题有关。