public object ResolveEntityPropertyValue(string rawValue, Type propertyType)
        {
            Type genericParameterType = propertyType.GetGenericArguments()[0];

            if (rawValue.IsNullOrEmpty())
            {
                return(CreateEmptyTypedList(genericParameterType));
            }

            return(CreateLazyList(genericParameterType, () => {
                IList list = CreateEmptyTypedList(genericParameterType);
                var delimiter = new[] { Settings.ValueDelimiter };
                string[] itemIds = rawValue.Split(delimiter, StringSplitOptions.RemoveEmptyEntries);

                IMap listTypeMap = MapFinder.FindMap(genericParameterType);
                foreach (
                    ISitecoreDomainEntity entity in
                    m_repository.GetEntities(itemIds.Select(itemId => new Guid(itemId)),
                                             listTypeMap))
                {
                    list.Add(entity);
                }
                return list;
            }));
        }