in src/DeloitteDigital.Atlas/Mapping/FieldMapping/FieldMapper.cs [29:47]
private void HandleLinkedObjectMapping<TModel>(TModel model, Item item, IPropertyMeta propertyMeta, IItemMapper itemMapper)
{
Guid guid;
if (!Guid.TryParse(item[propertyMeta.MappingName], out guid))
{
return;
}
var linkedItem = global::Sitecore.Context.Database.GetItem(new ID(guid));
if (linkedItem == null)
{
return;
}
var property = model.GetType().GetProperty(propertyMeta.PropertyName);
var linkedObject = Activator.CreateInstance(property.PropertyType) as dynamic;
itemMapper.Map(linkedObject, linkedItem);
property.SetValue(model, linkedObject);
}