如何从Orchard的派生主题获取BaseTheme资源的路径?

时间:2013-07-16 21:20:43

标签: orchardcms

在我的Orchard项目中,我有一个BaseTheme和一些源自它的主题。

在我的BaseTheme中,我有一个文件夹/Styles/Images。我需要在JavaScript变量中获取该文件夹的路径,以便将其传递给UI组件。为了做到这一点,BaseTheme中有一个视图,在所有派生主题中共享。在这个视图中,我有一段JavaScript代码可以获取路径:

var pathToImages = '@Url.Content(Html.ThemePath(WorkContext.CurrentTheme, "/Styles/Images/"))';

问题是,当从BaseTheme的上下文呈现视图时,它只获得正确的路径。 呈现此视图的每个派生主题都会获得一个不正确的路径,因为获取它的代码显示为WorkContext.CurrentTheme(因此此路径相对于派生主题)。

如何从位于BaseTheme中但从派生主题渲染的视图中获取位于BaseTheme中的资源的路径?

1 个答案:

答案 0 :(得分:1)

您可以使用资源的应用程序相对路径:

@Url.Content("~/Themes/NameOfTheBaseTheme/Styles/Images")