我刚刚选择Orchard建立我的博客。在创建此新博客的过程中,我正在创建一个自定义主题。此自定义主题同时具有CSS和图像。
我的问题
我的问题基本上可以归结为:如何渲染属于主题的图像?
到目前为止我尝试过的
我尝试使用以下方法:
<img src="@Html.ThemePath("/Content/Header.jpg")" alt="Logo"/>
但这并不能很好。它返回以下HTML标记:
<img src="~/Themes/FizzyLogic/Content/Header.jpg" alt="Logo"/>
它不应该返回什么。我希望它可以将绝对路径返回到我的网站中的图像。
最佳答案
有两种方法可以实现这一目标。最好的方法是将URL传递给Url.Content(...)帮助方法,如下所示:
<img src="@Url.Content(Html.ThemePath(WorkContext.CurrentTheme, "/Content/Header.jpg"))" />
这将为您的内容提供正确的路径。您还可以像Html.ThemePath(WorkContext.CurrentTheme,“ /Content/Header.jpg").Skip(1)一样删除前导波浪号(〜),这将为您提供相对于应用程序根目录的路径,但这就是虽然不是一个好的解决方案。
关于.net - 从 Orchard 内的主题渲染图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5693794/