【发布时间】:2012-05-10 20:08:01
【问题描述】:
我创建了一些 Razor 代码来将图像输出到页面上(如果存在)。它在下面详细介绍,并包含一些简单的检查以防止呈现空白列表项。该网站已经上线并且运行良好。然后,客户端从 Umbraco 的媒体文件夹中删除了该图像,这意味着我的节点分配了一个有效的图像,但该图像不存在。我得到了以下异常:
“字符串”不包含“作物”的定义
我该如何处理?
@using umbraco.MacroEngines;
@inherits umbraco.MacroEngines.DynamicNodeContext
@using umbraco.presentation.nodeFactory
@using umbraco.cms.businesslogic.media
<ul>
@foreach (dynamic client in @Model.Children)
{
var image = Model.MediaById(client.Logo);
var crops = image.imageCropper.crops;
<li>
<h2><span>@client.Name</span></h2>
@if (crops != null || crops.GetType().ToString() != "System.String")
{
<span class="itemImage">
<img src="@crops.Find("@name", "cropname").url" alt="@client.Name" />
</span>
}
</li>
}
</ul>
【问题讨论】: