如何从MVC部分控件中包含css文件?

Gle*_*ven 13 javascript css asp.net-mvc

我正在使用ASP.NET MVC,我有一个需要包含特定CSS和JS文件的部分控件.有没有办法让父页面在页面的"head"部分中呈现scriptlink标记,而不是仅仅在部分控制中将它们内联呈现?

为了阐明我想要包含文件的控件是从一个View中呈现的Html.RenderPartial,因此不能对其进行服务器端内容控制.我希望能够在html head部分中包含这些文件,以避免验证问题.

tva*_*son 8

如果我在局部视图中对CSS/Javascript有要求,我只需确保任何可能包含局部视图的页面,无论是直接还是从AJAX检索的内容,都包含在其标题中的CSS/Javascript.如果页面有母版页,我会在母版页页眉中添加内容占位符,并在子页面中填充它.为了在局部视图中获取智能感知,我在局部视图中添加CSS/Javascript包含但是用if (false)代码块包装,因此它们不包含在运行时.

<% if (false) { %>
   <link href=...
   <script type=...
<% } %>
Run Code Online (Sandbox Code Playgroud)

  • 对不起,这不是解决问题,你不能在局部视图中拥有内容控件,它们只能在页面上 (2认同)

小智 3

http://www.codeproject.com/Articles/38542/Include-Stylesheets-and-Scripts-From-A-WebControl-.aspx

本文包含有关重写 HttpContext.Response.Filter 的信息,这对我来说非常有用。