我使用.net框架4.6.1在C#中创建了一个Asp.Net webforms网站。 该网站运行良好,但当我尝试使用weboptimization组件优化CSS加载时,我从css url请求获得了404 。
请注意,我还有完美的js包。
在.aspx页面中我的头脑:
<webopt:BundleReference runat="server" Path="~/stylesheets" />
bundle.config位于网站结构的根目录中,其内容为:
<?xml version="1.0" encoding="utf-8" ?>
<bundles version="1.2">
<styleBundle path="~/stylesheets">
<include path="~/Bootstrap/css/bootstrap.css" />
<include path="~/css/style.css" />
<include path="~/css/custom.css" />
</styleBundle>
</bundles>
其中base-site是js bundle
Global.asax文件:
void Application_Start(object sender, EventArgs e)
{
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleTable.EnableOptimizations = true;
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
的web.config:
<system.web>
<authentication mode="None"/>
<compilation debug="true" targetFramework="4.6.1">
...
<httpRuntime targetFramework="4.6.1"/>
<pages enableEventValidation="true">
<namespaces>
<add namespace="System.Web.Optimization"/>
<add namespace="Microsoft.AspNet.Identity"/>
</namespaces>
<controls>
<add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt"/>
</controls>
</pages>
...
</system.web>
<system.webServer>
<modules>
<remove name="FormsAuthentication"/>
<remove name="BundleModule"/>
<add name="BundleModule" type="System.Web.Optimization.BundleModule"/>
</modules>
...
</system.webServer>
我有一个相同的网站,使用相同的web.config,相同的路由配置与 EnableFriendlyUrls(True),其中正确提供了CSS包。
为什么CSS捆绑不起作用? 我能做些什么来了解问题在哪里?
答案 0 :(得分:0)
经过多次测试,我发现每次在css bundle.config文件中进行更改时,我都必须关闭并重新启动Visual Studio。 重新启动IIS Express是不够的。
在生产服务器上,我必须停止并重新启动网站,回收应用程序池。