【问题标题】:What is the proper location for image folder in asp.net mvc C# project? [closed]asp.net mvc C#项目中图像文件夹的正确位置是什么? [关闭]
【发布时间】:2019-03-13 17:01:09
【问题描述】:

在 asp.net mvc C# 项目中图像文件夹的最佳位置是什么,以便在所有 css 脚本中轻松访问它。 目前我用过....

  • 图片路径:内容/图片
  • css文件路径:**Content/dist/css

    <img src="@Url.Content("../Content/Images/logo.png")> 
    

    适用于所有视图页面。还有

    background-image:url(../Content/Images/logo.png); 
    

    适用于主页/索引页面。 但是当我调用其他页面时.....

    background-image:url(../Content/Images/logo.png); 
    

    根本没有工作!还有

      background-image: url('data:image/jpeg;base64........)  
    

    适用于所有页面

【问题讨论】:

  • ASP.Net MVC 还是 ASP.Net MVC 核心?静态图片(我猜是这样)还是用户可以上传的图片?
  • 没有“正确”的位置,只有看到大多数人将 CSS 引用的图像放在“Content/Images”文件夹中的约定。
  • background-image: url('@Url.Content("~/Content/images/logo.png")') 用作内联css

标签: c#


【解决方案1】:

通常在 MVC 中,图像位于 Content 文件夹内的 Images 文件夹中。

您可以通过以下方式加载图像 &lt;img src="@Url.Content("~/Content/Images/imagename.extn")" /&gt;

但您将图像放置在哪里完全取决于您。

【讨论】:

  • 适用于所有视图页面。还有 background-image:url(../Content/Images/logo.png);适用于主页/索引页面。但是当我调用其他页面时..... background-image:url(../Content/Images/logo.png);根本没用!!
  • 试试 background-image: url(Images/logo.png);
  • 网址(图片/logo.png);根本没用!!
  • 最后我使用了 ... background-image: url('data:image/jpeg;base64........) 它适用于所有页面。
【解决方案2】:

图片文件夹:

在 ASP.Net MVC Core 中,默认情况下它们位于 /wwwroot/images。在 ASP.Net MVC(非核心)中,它们位于 /images/assets/images 中。

图像需要部署在服务器上。在 ASP.Net Core 中,wwwroot 是将您的静态资源放入稍后部署的正确位置。

CSS 中的图像引用:

关于在 CSS 文件中引用图像:请注意,只要图像部署在服务器上并且可以从 CSS 访问,图像的位置并不重要。为此,您将添加一些 Url() 引用到您的 CSS。这里重要的部分是这些 Url 是相对于 CSS 文件的。如果从多个 CSS 文件中引用同一张图片,并且这些 CSS 文件位于不同的文件夹中,则每个 CSS 文件所需的 Url 也不同。

示例:

  • /images/logo.png
  • /css/site.css => Url(../images/logo.png)
  • /css/subsite/bluetheme.css => Url(../../images/logo.png)

【讨论】:

  • 图片路径:Content/Images ,css 文件路径:Content/dist/css 工作适用于所有查看页面。还有 background-image:url(../Content/Images/logo.png);适用于主页/索引页面。但是当我调用其他页面时..... background-image:url(../Content/Images/logo.png);根本没用!!
  • Url(...) 是相对于 CSS 文件的。如果您将它们放在单独的 CSS 文件中,它们不是动态的,也不能是 UrlHelpers 等。您是在页面中还是在 .CSS 文件中放置了 CSS?我建议将它放在外部 CSS 文件中。然后使用 CSS 中的相对路径引用图像。
猜你喜欢
  • 2011-05-04
  • 2023-03-09
  • 2020-10-31
  • 2015-12-10
  • 1970-01-01
  • 1970-01-01
  • 2012-03-02
  • 2013-02-25
  • 1970-01-01
相关资源
最近更新 更多