首页 > 解决方案 > 区域布局中的链接到位于 ASP NET MVC 应用程序根目录中的 Content\Css 文件夹

问题描述

大家早上好/白天/晚上/晚上,

询问您在 ASP NET MVC 中处理区域的想法。我的应用程序有几个区域,每个区域都有自己的_Layout。如何在其中创建指向位于根目录中 Content 文件夹中的 Css 子文件夹(与 Scripts 相同)的链接?区域的布局使用相同的 css 和图像文件,所以我怀疑我应该在每个区域内创建新的 Content 文件夹并复制相同的文件。请解释我应该如何解决这个问题。并提前非常感谢。

标签: cssasp.net-mvcrazor

解决方案


您可以使用虚拟根路径运算符 ~

为您创建的模板化 _Layout 为您提供了一个示例。

<link href="~/Content/bootstrap.min.css" rel="stylesheet" type="text/css" />
...
<script src="~/Scripts/bootstrap.min.js"></script>

即使在一个区域内,它也会解析为根内容和脚本,因此不需要为每个区域复制资源(本示例中的引导程序)。

请记住,这是在服务器端解决的。

因此,如果您需要在视图页面上的脚本中访问它:

<script>
    var scriptRoot = "@Url.Content("~/Scripts")";
</script>

在控制器代码中:

public ActionResult Index()
{
    ViewBag.BoostrapPath = Url.Content("~/Content/boostrap.css");

    return View();
}

推荐阅读