【问题标题】:Umbraco 7 MVC Razor - Rendering Image (Multinode Tree Picker Script)Umbraco 7 MVC Razor - 渲染图像(多节点树选择器脚本)
【发布时间】:2015-05-22 10:50:11
【问题描述】:

我创建了一个多节点树选择器数据类型,我试图将车辆的缩略图作为 foreach 循环的一部分列出,但是我一直在图像的 src 中获取 ID 渲染,我无法获取图片的网址。

MVC 剃刀代码

@inherits Umbraco.Web.Macros.PartialViewMacroPage
@using Umbraco.Web

@*
    Macro to list nodes from a Multinode tree picker, using the pickers default settings.
    Content Values stored as xml.

    To get it working with any site's data structure, simply set the selection equal to the property which has the 
    multinode treepicker (so: replace "PropertyWithPicker" with the alias of your property).
*@

@* Lists each selected value from the picker as a link *@

<div class="featuredVehicles">
    @foreach (var id in CurrentPage.featuredVehicles.Split(','))
    {    

    @*For each link, get the node, and display its name and url*@
        var vehicleContent = Umbraco.Content(id);

        <div class="col-xs-6 col-md-4 col-xs-height">
            <a href="@vehicleContent.Url">

                @if (vehicleContent.HasValue("vehicleThumbnail"))
                {
                    var mediaItem = Umbraco.TypedMedia(vehicleContent.GetPropertyValue("vehicleThumbnail"));
                    <img class="featuredVehicleImg img-responsive" src="@vehicleContent.GetPropertyValue("vehicleThumbnail")" alt="@vehicleContent.Name"/>                 
                }
                else
                {            
                    <img class="comingSoon" src="http://placehold.it/650x408" alt="@vehicleContent.Name">
                }

                <strong>
                    <span class="name">@vehicleContent.Name</span>
                </strong>

                <span class="desc">@vehicleContent.GetPropertyValue("shortContent")</span>

                <span class="prx">from, <strong>&pound;@vehicleContent.vehiclePrice</strong> per day</span>

                <span class="label label-primary moreinfo">More Info</span>

            </a>
        </div>
    }
</div>

HTML

<img alt="Pharmaceutical Vehicle One" src="1092" class="featuredVehicleImg img-responsive">

【问题讨论】:

    标签: asp.net asp.net-mvc razor umbraco umbraco7


    【解决方案1】:

    问题解决了;

    这是导致问题的地方;

    if (vehicleContent.HasValue("vehicleThumbnail")){                                         
                            var dynamicMediaItem = Umbraco.Media(vehicleContent.vehicleThumbnail);
                            <img src="@dynamicMediaItem.umbracoFile" alt="@dynamicMediaItem.Name"/>
                        }
                        else
                        {            
                            <img class="comingSoon" src="http://placehold.it/650x408" alt="@vehicleContent.Name">
                        }
    

    希望它能帮助其他人:-)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多