asp.net - ASP 支持的 CSS 文件和捆绑

标签 asp.net css bundling-and-minification asp.net-optimization

一段时间以来,我采用了在 .aspx 页面中编写 CSS 并将该页面作为 CSS 提供服务的做法。这主要是因为我参与的一个元素在图像最终托管在实际的 CDN 上之前有一个开发“CDN”,所以当涉及到背景图像时,我需要一种通过 web.config 更改 URL 的方法。我还得到了一些其他的好处,比如变量。一个小样本:

#id
{
    color: '<%= PrimaryColor %>';
    background-image: url('<%= PrependCdnUrl("myimage.jpg") %>');
}

自从从事 MVC 元素以来,我现在想将 CSS 捆绑合并到原始元素(一个 webforms 元素)中。我遇到的问题是,不允许捆绑 .aspx 页面,我收到类似于以下内容的错误:

(1,1): run-time error CSS1019: Unexpected token, found '<'
(1,2): run-time error CSS1019: Unexpected token, found '%'
...

有谁知道我如何让它工作?

最佳答案

简答:这是不可能的。

长答案:通过一些技巧是可能的。

实际上,我脑海中浮现出 2 种可能性可以实现这一点(它们没有经过测试,不确定它们是否最终会变得艰难):

  • 在您的 IIS 中,您可以定义哪个文件类型由哪个解释器处理。您可以尝试定义 .css 文件以使用与 ASP.NET 页面相同的解释器。 (不确定这是否有效)
  • 您可以创建 .aspx 文件而不是 .css 文件,在其中动态输出所需的 css 代码。将此动态 css aspx 页面的返回流的 MIME 类型设置为 CSS 的 MIME 类型。然后将您的 aspx 页面引用为 css 文件

关于asp.net - ASP 支持的 CSS 文件和捆绑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21043680/

相关文章:

html - 动画 div 中的字母 "I"?

c# - Bundle Transformer for LESS 和 @import 的使用

ASP.NET MVC 优化 : Bundling without minifying?

c# - 使用 asp.net-mvc2 和 Entity Framework 编辑和更新复杂 View 模型对象的正确方法

asp.net - 在图表中显示图例

asp.net - MVC5中IdentityDbContext和IdentityDbContext<ApplicationUser>有什么区别

c# - asp.net mvc 捆绑 gzip 压缩不起作用

c# - ASP.Net ImageButton 窃取 Enter 按键

jquery - 在悬停事件中更改 CSS 不透明度不起作用

javascript - 功能改变图像不起作用,为什么