2014-02-21 34 views
1

我使用Microsoft.AspNet.Web.Optimization nuget包进行css和js捆绑和缩小。捆绑 - 应用程序路径错误

我在这条道路~/bundles/shared.css

BundleTable.Bundles.Add(
    new StyleBundle("~/bundles/shared.css") 
     .Include(
     "~/Style/DevexpressAdapter.css", 
     "~/Style/Site.css", 
     "~/js/jquery-ui-1.10.4.custom/css/flick/jquery-ui-1.10.4.custom.min.css")); 

创建包当我运行在本地主机上的项目(从Visual Studio中CTRL + F5)运行状况良好。如果我点击http://localhost/bundles/shared.css,那么我会将所有已添加到该文件夹​​中的文件都缩小并组合为css。

但在发布的位置,它不起作用。

该网站运行在http://192.168.1.8/MyApp/地址。

当我看看html时,缩小的包的URL是src="/MyApp/bundles/shared.css"。但是,如果我击中http://192.168.1.8/MyApp/bundles/shared.css我收到资源未找到错误。如果我也点击http://192.168.1.8/MyApp/MyApp/bundles/shared.css我得到同样的错误。

这是怎么回事,我该如何解决这个问题?我无法在生产服务器上触摸任何东西。我只能将文件复制到我有权访问的共享文件夹中。

看来这个包的url没有正确解析。 我期望渲染包的网址不会拥有这个/MyApp/部分

回答

-1

而是提供虚拟路径,尝试使用与下面的方法

的使用Server.Mappath物理路径()。

+0

Bundle的路径必须始终是应用程序相对url不是物理路径,否则会引发异常。另外,软件包不是位于磁盘某处的实际文件。它是在浏览器访问bundle的url时创建并返回给响应的内容。 –