我已經爲所有項目創建了Glassmapper模型,我的Sitecore項目中有一個droplink。 以下是具有droplink字段的項目的模型。Sitecore Droplink設置屬性不起作用
[SitecoreClass]
public class Field:BaseItem
{
[SitecoreField("Mapper Item")]
public virtual LinkedItem MapperItem { get; set; }
}
映射項字段是在Sitecore的一個droplink字段, BaseItem
類具有所有像Sitecore的基本屬性:
[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; }
}
我當我訪問01時獲取MapperItem
屬性中的LinkedItem
對象對象,但如果我嘗試設置MapperItem
屬性它不保存它在相應的字段(「映射項目」字段),但我沒有得到任何錯誤。
我用下面的代碼來設置droplink
fieldItem.MapperItem = ItemUtility.GetItem<LinkedItem>(new Guid("some valid guid available in the droplist source"));
請參閱[「應該在其標題中包含」標籤?「](http://meta.stackexchange.com/questions/19190/should-questions-include-tags-in-their-titles ),那裏的共識是「不,他們不應該」! – 2015-04-03 08:35:14
您是否按照說明http://www.glass.lu/Mapper/Sc/Tutorials/Tutorial11?您還需要在您的LinkedItem類中設置「SitecoreType」屬性,如 [SitecoreType(TemplateId =「GUID HERE」,AutoMap = true)] – 2015-04-03 11:47:36
@AhmedOkour:但SitecoreType不可用,SitecoreClass是可用屬性。 – Bevin 2015-04-03 14:31:27