如何用物理路径替换MVC中的'〜'符号

时间:2016-11-01 08:34:16

标签: asp.net-mvc asp.net-mvc-3 asp.net-mvc-4 model-view-controller

在Mvc应用程序中,如果使用

添加布局
@Styles.Render("~/Content/themes/base/css")
@Scripts.Render("~/bundles/jquery") .

需要一个解决方案来取代

  

符号。所以输出不应该像     渲染页面中的/Content/themes/base/jquery.ui.core.css

相反

localhost:xxxxx/Content/themes/base/jquery.ui.core.css

在IISExpress下运行mvc应用程序时需要添加此Localhost,其中托管到服务器时将其修改为托管应用程序路径

1 个答案:

答案 0 :(得分:0)

据我所知,.Render()调用中使用的路径只是一个标识符或密钥,它将为之前添加的文件生成路径。

这是您通常在BundleConfig.cs中找到的内容:

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
              "~/Scripts/jquery-{version}.js"));

调用~/bundles/时,.Render()部分从不发送到输出。发送的内容是来自.Include()来电的实际(已翻译的)路径

您应始终将这些路径以"~/"开头,以便正确输出。我从未发现需要包含服务器名称,因为浏览器默认会从提供网页的同一服务器请求该文件。