这应该是令人尴尬的简单,但我不能让它工作:我只想在部分视图模板中显示上传到Umbraco媒体库(Umbraco 7.1.1)的图像.代码是
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
var imgNode = CurrentPage.BannerBackgroundImage;
var imgUrl = umbraco.library.NiceUrl(imgNode);
<div id="banner-wrapper" style="background: url('@imgUrl') center center no-repeat;">
<!-- some irrelevant content -->
</div>
}
Run Code Online (Sandbox Code Playgroud)
其中BannerBackgroundImage是页面的自定义属性.但是,当显示时,@imgUrl将替换为#.
我尝试过的其他替代方案是多个Media Picker图像,如何显示Media Picker图像,使用Razor从媒体获取图像,以及从Media Picker显示图像,仅举几例.
如果有人可以帮我解决我认为的新手问题,我真的很感激!
Jes*_*lon 35
我发现这种方式简单干净:
@if (CurrentPage.Image != null && !(CurrentPage.Image is Umbraco.Core.Dynamics.DynamicNull))
{
var m = Umbraco.Media(CurrentPage.Image);
<img src="@m.Url" alt="@m.UrlName" />
}
Run Code Online (Sandbox Code Playgroud)
我希望它能帮助别人
Cra*_*ole 14
谢谢耶稣Mogollon,
我已经崩溃了:
<img src="@Umbraco.Media(CurrentPage.headerBackgroundImage).Url" alt="">
Run Code Online (Sandbox Code Playgroud)
我已将文件设置为强制文件,因此希望我不需要if语句部分.