Beispiel #1
0
        public virtual bool Resolve(ICollection <IEntity> resultingSet, string name, EntityType typesToConsider)
        {
            bool found = My <NameResolutionService> .Instance.Resolve(name, GetMembers(), typesToConsider, resultingSet);

            if (IsInterface)
            {
                if (_provider.Map(typeof(object)).Resolve(resultingSet, name, typesToConsider))
                {
                    found = true;
                }
                foreach (IType baseInterface in GetInterfaces())
                {
                    found |= baseInterface.Resolve(resultingSet, name, typesToConsider);
                }
            }
            else
            {
                if (!found || TypeSystemServices.ContainsMethodsOnly(resultingSet))
                {
                    IType baseType = BaseType;
                    if (null != baseType)
                    {
                        found |= baseType.Resolve(resultingSet, name, typesToConsider);
                    }
                }
            }
            return(found);
        }