C# 在Sitecore中使用Glassmapper映射图像
我试图在视图中的foreach循环中渲染图像。但即使模型有不同的图像,它也显示相同的图像。 视图中的我的代码:C# 在Sitecore中使用Glassmapper映射图像,c#,sitecore,glass-mapper,sitecore8,C#,Sitecore,Glass Mapper,Sitecore8,我试图在视图中的foreach循环中渲染图像。但即使模型有不同的图像,它也显示相同的图像。 视图中的我的代码: @foreach (var currentFeature in Model.FacilityFeatures) { <li class="features-list-enclosure"> <span title="@currentFeature.CategoryName" class="fea
@foreach (var currentFeature in Model.FacilityFeatures)
{
<li class="features-list-enclosure">
<span title="@currentFeature.CategoryName" class="features-list-enclosure__item">
@RenderImage(x => currentFeature.CategoryICON, new { title = @currentFeature.CategoryName }, isEditable: true)
</span>
</li>
}
@foreach(Model.FacilityFeatures中的var currentFeature)
{
@RenderImage(x=>currentFeature.CategoryICON,新的{title=@currentFeature.CategoryName},可编辑:true)
}
我的模型:
public class FacilitiesPage : BasePage
{
[SitecoreField(FieldName = "Facility features")]
public virtual IEnumerable<ContentCategory> FacilityFeatures { get; set; }
}
public class FacilitiesPage:BasePage
{
[SitecoreField(FieldName=“设施功能”)]
公共虚拟IEnumerable设施功能{get;set;}
}
当我运行调试器时,它显示currentFeature.CategoryICON项在循环的每个迭代中都有不同的映像。但是它在UI上显示相同的图像,但是图像上的标题不同。
如果我不使用Glassmapper渲染图像,则它会正常工作并显示不同的图像:
@foreach (var currentFeature in Model.FacilityFeatures)
{
<li class="features-list-enclosure">
<span title="@currentFeature.CategoryName" class="features-list-enclosure__item">
<img title="@currentFeature.CategoryName" src="@currentFeature.CategoryICON.Src" />
</span>
</li>
}
@foreach(Model.FacilityFeatures中的var currentFeature)
{
}
发生这种情况是因为当表达式相同时,Glass会缓存输出。尝试使用此选项渲染图像:
@RenderImage(currentFeature, x => x.CategoryICON, new { title = @currentFeature.CategoryName }, isEditable: true)
这个问题与此有关: