【问题标题】:Umbraco 7 foreach loops through same imageUmbraco 7 foreach 循环通过相同的图像
【发布时间】:2017-11-07 08:14:07
【问题描述】:

在 Umbraco 的 foreach 循环中正确显示图像有点困难,我是 C# 和 Umbraco 的菜鸟。

它可以很好地遍历文章,但是在每个文章中显示相同的图像

  @{
            var articles = Model.Content.Site().FirstChild("perspectives").Children()
                                .Where(x => x.IsVisible());
        }
            @foreach (var item in articles.Take(5))
            {
                <div class="related-article">
                    <a href="@item.Url">
                        <div class="gray-block-article-block">
                          @{ string imageUrl = Model.Content.GetPropertyValue<IPublishedContent>("articleImage").Url; }

                        <img src="@imageUrl" alt="@item.Name">
                        <div>@Umbraco.Truncate(library.StripHtml(item.Name), 20)</div>
                    </div>
                    </a>
                </div>
            }

【问题讨论】:

  • 你调试过字符串 imageUrl = ?????对所有人都一样,然后在 Model.Content.GetPropertyValue("articleImage").Url 中检查它,这里有问题
  • Model.Content.GetPropertyValue("articleImage").Url 将始终得出相同的值。我猜那么“项目”的某些元素应该有图片?
  • 我有一个名为 articleImage 的媒体选择器属性,我在其中将图像缩略图上传到所有文章

标签: c# razor umbraco7


【解决方案1】:

你正在从当前节点的属性中获取 URL (Model.Content)你应该从循环中的 item 中获取属性:

@{ string imageUrl = item.GetPropertyValue<IPublishedContent>("articleImage").Url; }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多