从Macropartialview Umbraco 8获取图像URL



嗨,我曾经能够从宏中获取图像URL:

var imgMain = Model.MacroParameters["image"];
    int imgWidth = Convert.ToInt32(Model.MacroParameters["imageWidth"]);
    var mediaItemOne = Umbraco.TypedMedia(imgMain);
    <img src='@mediaItemOne.Url.GetCropUrl(width:imageWidth)' alt=''/ >

我现在遇到以下错误,我找不到有关如何执行的文档的新方法:

umbracohelper'不包含" typedmedia"的定义,没有 可访问的扩展方法" typedmedia"接受 可以找到" umbracohelper"键入(您是否缺少使用指令 或组件参考?)

而不是Umbraco.TypedMedia,只需使用Umbraco.Media即可简化API,因为不再支持动力学,并且不再需要API。

内容也是如此-TypedContent消失了,现在Umbraco.Content返回了强烈打字的ipublyContent项目。

好吧,如果有人遇到这篇文章,这就是我最终在Umbraco 8

中工作的方式
@inherits Umbraco.Web.Macros.PartialViewMacroPage
@using Umbraco.Web;
@using Umbraco.Web.Composing
@{
    var img         = Model.MacroParameters["image"].ToString();
    int imageWidth  = Convert.ToInt32(Model.MacroParameters["imageWidth"]);
    var udi         = Udi.Parse(img);
    var imgUrl      = Current.UmbracoHelper.ContentQuery.Media(udi).Url;
    <img src='@imgUrl.GetCropUrl(width:imageWidth)' alt='' />
}

尝试此

@inherits Umbraco.Web.Mvc.UmbracoViewPage
@{
    var site = Model.Root();
    var bannerImage = Model.Value<IPublishedContent>("bannerImage");
}
<img scr="@bannerImage.Url" />

最新更新