0

我有一个布局页面,它在我的应用程序中的所有视图中共享。该视图引用了我的应用程序中的 .css。为了参考,我目前在 _layout.cshtml 文件的顶部有以下内容:

<link rel="stylesheet" href="/css/themes/default/app.css" />

我正计划使用这个应用程序并通过 PhoneGap 加载到手机应用程序中。因此,我无法使用 /css/themes/default.app.css。相反,我需要将其转换为相对于文件路径的字符串。例如,我需要动态生成一个如下所示的值:

<link rel="stylesheet" href="../../../css/themes/default/app.css" />

“../”的数量将根据它的深度来确定。我认为 ASP.NET MVC 3 框架中会内置一个实用程序或其他东西来执行此操作。但是,我什么也找不到。我有很多文件,我不想手动更新所有的 url 模式。是否有一个实用程序可以自动处理我想要完成的事情?如果是这样,怎么做?

谢谢

4

1 回答 1

1

使用UrlHelper.Content HTML Helper 方法。

此方法将虚拟(相对)路径转换为应用程序绝对路径。

<link href="@Url.Content("~/css/themes/default/app.css")" 
                                       rel="stylesheet" type="text/css" />     

您可以将css文件夹放在ContentMVC 项目根目录下

于 2012-07-20T18:24:55.427 回答