【发布时间】:2015-04-03 08:24:44
【问题描述】:
我已经为所有项目创建了 Glassmapper 模型,我的一个 Sitecore 项目中有一个下拉链接。 以下是带有 droplink 字段的项目的模型。
[SitecoreClass]
public class Field:BaseItem
{
[SitecoreField("Mapper Item")]
public virtual LinkedItem MapperItem { get; set; }
}
Mapper Item 字段是 sitecore 中的 droplink 字段,
BaseItem 类具有所有站点核心基本属性,例如:
[SitecoreId]
public virtual Guid Id { get; set; }
[SitecoreInfo(SitecoreInfoType.Name)]
public virtual string Name { get; set; }
[SitecoreInfo(SitecoreInfoType.DisplayName)]
public virtual string DisplayName { get; set; }
[SitecoreInfo(SitecoreInfoType.Url)]
public virtual string Url { get; set; }
[SitecoreInfo(SitecoreInfoType.Path)]
public virtual string Path { get; set; }
[SitecoreInfo(SitecoreInfoType.ContentPath)]
public virtual string ContentPath { get; set; }
[SitecoreInfo(SitecoreInfoType.TemplateId)]
public virtual Guid TemplateId { get; set; }
[SitecoreInfo(SitecoreInfoType.TemplateName)]
public virtual string TemplatedName { get; set; }
[SitecoreField("__created")]
public virtual DateTime Created { get; set; }
[SitecoreField("__updated")]
public virtual DateTime Updated { get; set; }
而LinkedItem 具有以下属性:
[SitecoreClass]
public class LinkedItem:BaseItem
{
[SitecoreField("Field ID")]
public virtual string FieldID { get; set; }
[SitecoreField("Display Name")]
public virtual string DisplayName { get; set; }
[SitecoreField("Field Type")]
public virtual string FieldType { get; set; }
}
当我访问Field 对象时,我在MapperItem 属性中获得了LinkedItem 对象,但是如果我尝试设置MapperItem 属性,它不会将其保存在相应的字段中(“映射器项”字段),但我没有收到任何错误。
我使用下面的代码来设置droplink
fieldItem.MapperItem = ItemUtility.GetItem<LinkedItem>(new Guid("some valid guid available in the droplist source"));
【问题讨论】:
-
请参阅"Should questions include “tags” in their titles?",其中的共识是“不,他们不应该”!
-
您是否按照此处的说明进行操作 glass.lu/Mapper/Sc/Tutorials/Tutorial11 ?您还需要在 LinkedItem 类上设置“SitecoreType”属性,例如 [SitecoreType(TemplateId = "GUID HERE", AutoMap = true)]
-
@AhmedOkour:但是 SitecoreType 不可用,SitecoreClass 是可用属性。
-
你添加了这个命名空间吗?使用 Glass.Mapper.Sc.Configuration.Attributes ?
-
添加 Glass.Sitecore.Mapper.Configuration.Attributes,Glass.Mapper.Sc.Configuration.Attributes 不可用。
标签: c# asp.net sitecore sitecore6 glass-mapper