C# MVC - 渲染部分不加载 CSS

CSh*_*per 2 css asp.net-mvc rendering asp.net-mvc-4

我已经在<head>我的_Layout页面部分定义了这段代码。

@RenderSection("Styles", false)
Run Code Online (Sandbox Code Playgroud)

然后我的index页面

@section Styles {
<link rel="stylesheet" type="text/css" href="@Url.Content("~Views/zCSS/ManualProposalWindow.css")" />    
}
Run Code Online (Sandbox Code Playgroud)

我的索引页面在 Views/Home/Index

我的 CSS 在 Views/CSS/ManualProposalWindow.css

我知道这些样式是正确的,因为如果我将它们放在索引内的样式块中,它就可以正常工作。

这是我正在尝试加载的 CSS:

body {
       background: black;
}
Run Code Online (Sandbox Code Playgroud)

im1*_*ike 5

你的索引页应该是这样的:

@section Styles
{
    @Styles.Render("~/Content/styleFile.css")
    @Styles.Render("~/Content/orStyleBundle")
}
Run Code Online (Sandbox Code Playgroud)

另外,将您的样式放入Content解决方案中的(或类似)文件夹中。

  • 我收到错误:“当前上下文中不存在名称“样式””。也许我使用的是不同版本的 C#? (3认同)

smd*_*ger 5

views无法加载文件夹内的文件。由于那里的httpHandler配置,他们会抛出 404 错误Web.config。这是为了安全起见,因为您不希望您的 .cshtml 文件可公开访问。

<httpHandlers>
  <add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
</httpHandlers>
Run Code Online (Sandbox Code Playgroud)

包含任何其他文件夹中的 css 文件,您应该没问题。