Sitecore 用于子项的Glass Mapper支持体验编辑器

Sitecore 用于子项的Glass Mapper支持体验编辑器,sitecore,glass-mapper,sitecore8,sitecore-mvc,Sitecore,Glass Mapper,Sitecore8,Sitecore Mvc,我有Sitecore 8 MVC的视图渲染控件, 此视图渲染控件渲染选定数据源的一些子项 public interface IBase { [SitecoreId] Guid Id { get; set; } } public interface IRootCollection : IBase { [SitecoreChildren] IEnumerable<ICModel> Children {

我有Sitecore 8 MVC的视图渲染控件, 此视图渲染控件渲染选定数据源的一些子项

  public interface IBase
    {
        [SitecoreId]
        Guid Id { get; set; }
}
 public interface IRootCollection : IBase
    {
        [SitecoreChildren]
        IEnumerable<ICModel> Children { get; set; }
    }

   [SitecoreType(TemplateId = "{someid}", AutoMap = true)]
    public interface ICModel : IBase
    {

        Image Image { get; set; }

        string Title { get; set; }

        string Description { get; set; }
    }
公共接口IBase
{
[SitecoreId]
Guid Id{get;set;}
}
公共接口IRootCollection:IBase
{
[儿童网站]
IEnumerable子项{get;set;}
}
[SitecoreType(TemplateId=“{someid}”,AutoMap=true)]
公共接口ICModel:IBase
{
图像{get;set;}
字符串标题{get;set;}
字符串说明{get;set;}
}
我有下一个视图渲染

@inherits Glass.Mapper.Sc.Web.Mvc.GlassView<IRootCollection>

    @foreach (var item in Model.Children)
    {        
            <div class="col-lg-3">              
    @RenderImage(item , m => m.Image,  isEditable: true)
                    <h2>@Editable(item, m => m.Title)</h2>
                </a>
                <div>@Editable(item, m => m.Description)</div>
            </div>
                        }
                    }
@继承Glass.Mapper.Sc.Web.Mvc.GlassView
@foreach(Model.Children中的var项)
{        
@RenderImage(项,m=>m.Image,可编辑:true)
@可编辑(项目,m=>m.Title)
@可编辑(项目,m=>m.Description)
}
}
另外,我有用于视图渲染控制的设置体验编辑器按钮。 我可以通过Experience Editor添加、排序新的ICModel项,但无法删除它。我只能删除全套子项。
如何设置glass mapper以生成对Experience Editor的完全支持。

您需要添加一个“删除”按钮并对其进行处理,但是您的模型需要添加
[SitecoreId]
属性才能映射到项目。实际上,我在示例中跳过了它。我刚刚加了。如何为子项添加“删除”按钮。@Arbejdsglæde可能需要一个编辑框来包装子项?@nsgocev是的,但编辑框需要一些属性。。如果我使用just BeginEditFrame,它会破坏UI视图,没有组件名称将路径添加到您的模型([SitecoreInfo(SitecoreInfoType.FullPath)],并尝试如下操作:@foreach(model.Children中的var项){using(BeginEditFrame(item.path)){@RenderImage(item,m=>m.Image,isEditable:true)@Editable(item,m=>m.Title)@Editable(item,m=>m.Description)}