在 Umbraco 7 中显示媒体库中的图像 [英] Display Image from Media Library in Umbraco 7
问题描述
这应该是非常简单的事情,但我无法让它工作:我只是想在局部视图模板中显示上传到 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;"><!-- 一些不相关的内容-->
}
其中 BannerBackgroundImage 是页面的自定义属性.但是,当显示此内容时,@imgUrl
将替换为 #
.
我尝试过的其他替代方案是 多个媒体选择器图像,如何显示媒体选择器图像,使用 Razor 从媒体获取图像 和 显示来自媒体选择器的图像,仅举几例.
如果有人能帮助我解决我认为是菜鸟的问题,我将不胜感激!
我发现这种方法既简单又干净:
@if (CurrentPage.Image != null && !(CurrentPage.Image is Umbraco.Core.Dynamics.DynamicNull)){var m = Umbraco.Media(CurrentPage.Image);<img src="@m.Url" alt="@m.UrlName"/>}
希望能帮到别人
This should be something embarrassingly simple, but I can't get it to work: I'd simply like to display an image that was uploaded to the Umbraco Media Library (Umbraco 7.1.1) within a Partial View template. The code is
@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>
}
where BannerBackgroundImage is a custom property of the page. When this is displayed, however, the @imgUrl
gets replaced with #
.
Other alternatives that I've tried are multiple Media Picker images, how to display a Media Picker image, get image from media with Razor, and display image from Media Picker, to name but a few.
I'd really appreciate if somebody could help me with what I believe is a rookie question!
I found this way easy and clean:
@if (CurrentPage.Image != null && !(CurrentPage.Image is Umbraco.Core.Dynamics.DynamicNull))
{
var m = Umbraco.Media(CurrentPage.Image);
<img src="@m.Url" alt="@m.UrlName" />
}
I hope that it helps somebody else
这篇关于在 Umbraco 7 中显示媒体库中的图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!