我在发布时请求缩小的资产时收到MapRequestHandler错误。谁应该在发布时处理此请求?调试渲染工作正常,并提供正确的文件。
Key: "~/Plugins/Pingo.Demo.BootstrapPrimary.1.0.0.3/Content/css"
item(s): "~/Plugins/Pingo.Demo.BootstrapPrimary.1.0.0.3/Content/bootstrap.css"
,"~/Plugins/Pingo.Demo.BootstrapPrimary.1.0.0.3/Content/site.css"
<link href="/Plugins/Pingo.Demo.BootstrapPrimary.1.0.0.3/Content/bootstrap.css" rel="stylesheet"/>
<link href="/Plugins/Pingo.Demo.BootstrapPrimary.1.0.0.3/Content/site.css" rel="stylesheet"/>
<link href="/plugins/Pingo.Demo.BootstrapPrimary.1.0.0.3/Content/css?v=DPgH9yYiO33UIbEOm8f4duzFsUqfKWua2il4TOVUrtQ1" rel="stylesheet"/>
发布版本导致MapRequestHandler 404,其中ASP.Net认为这是一个staticFile。
有什么想法吗? 感谢
答案 0 :(得分:0)
感谢.NET Reflector反编译System.Web.Optimization。
System.Web.Optimization有一个PreStartInitMethod,只有在我的主应用程序引用System.Web.Optimization时才会调用它。就我而言,我有自己的PreStartInitMethod。在我的版本中,我在一堆插件程序集上调用了BuildManager.AddReferencedAssembly(assembly)。 System.Web.Optimization是其中一个程序集。 System.Web.Optimization中的PreStartInitMethod不是很早就知道(通过直接引用),因此它从未被调用过。
我必须找到我加载的所有程序集的所有PreStartInitMethods,然后从我的PreStartInitMethod()中调用这些方法。
对我来说,一个令人瞩目的时刻是,我不知道PreStartInitMethods有很多程序集,所以在处理.NET时这真是一个插件101课程。