System\Data\Mapping\StorageMappingItemLoader.cs (22)
1615(StructuralType)resultType,
1927if (!LoadFunctionImportStructuralType(nav.Clone(), new List<StructuralType>() { complexType }, columnRenameMappings, null))
1982IEnumerable<StructuralType> currentTypesInHierachy = isOfTypeEntityTypes.Concat(entityTypes).Distinct().OfType<StructuralType>();
1999IEnumerable<StructuralType> currentTypes,
2048IEnumerable<StructuralType> currentTypes)
2081StructuralType structuralResultType,
2093StructuralType resultType;
2094if (MetadataHelper.TryGetFunctionImportReturnType<StructuralType>(functionImport, 0, out resultType))
2126var structuralTypeMappings = new List<Tuple<StructuralType, List<StorageConditionPropertyMapping>, List<StoragePropertyMapping>>>();
2149structuralTypeMappings.Add(Tuple.Create((StructuralType)functionImportKB.MappedEntityTypes[i], typeConditions, propertyMappings));
2177structuralTypeMappings.Add(Tuple.Create((StructuralType)resultComplexType, new List<StorageConditionPropertyMapping>(), propertyMappings));
2199internal static bool TryInferTVFKeys(List<Tuple<StructuralType, List<StorageConditionPropertyMapping>, List<StoragePropertyMapping>>> structuralTypeMappings, out EdmProperty[] keys)
2439StructuralType structuralType,
2856(containerType as StructuralType).Members.TryGetValue(propertyName, false, out tempMember);
2918StructuralType containerStructuralType = containerType as StructuralType;
3211((StructuralType)containerType).Members.TryGetValue(propertyName, false /*ignoreCase*/, out tempMember);
3882private IEnumerable<StorageModificationFunctionParameterBinding> LoadParameterBindings(XPathNavigator nav, StructuralType type)
3906private IEnumerable<StorageModificationFunctionParameterBinding> LoadParameterBindings(XPathNavigator nav, StructuralType type,
4111private EdmMember LoadComplexTypeProperty(XPathNavigator nav, StructuralType type, out ComplexType complexType)
4161private StorageModificationFunctionParameterBinding LoadScalarPropertyParameterBinding(XPathNavigator nav, StructuralType type, bool restrictToKeyMembers)
System\Data\Metadata\ObjectLayer\ObjectItemConventionAssemblyLoader.cs (40)
51Debug.Assert(ospaceType is StructuralType || Helper.IsEnumType(ospaceType), "Only StructuralType or EnumType expected.");
120Debug.Assert(cspaceType is StructuralType || Helper.IsEnumType(cspaceType), "Structural or enum type expected");
139Debug.Assert(cspaceType is StructuralType);
140return TryCreateStructuralType(type, (StructuralType)cspaceType, out newOSpaceType);
151private bool TryCreateStructuralType(Type type, StructuralType cspaceType, out EdmType newOSpaceType)
160StructuralType ospaceType;
177() => ospaceType.BaseType = ResolveBaseType((StructuralType)cspaceType.BaseType, type));
188if (!TryCreateMembers(type, (StructuralType)cspaceType, ospaceType, referenceResolutionListForCurrentType))
335private EdmType ResolveBaseType(StructuralType baseCSpaceType, Type type)
348Debug.Assert(!foundValue || ospaceType is StructuralType, "Structural type expected (if found).");
353private bool TryCreateMembers(Type type, StructuralType cspaceType, StructuralType ospaceType, List<Action> referenceResolutionListForCurrentType)
383private bool TryFindComplexProperties(Type type, StructuralType cspaceType, StructuralType ospaceType, PropertyInfo[] clrProperties, List<Action> referenceResolutionListForCurrentType)
408var ot = ospaceType;
417private bool TryFindNavigationProperties(Type type, StructuralType cspaceType, StructuralType ospaceType, PropertyInfo[] clrProperties, List<Action> referenceResolutionListForCurrentType)
448var ct = cspaceType;
449var ot = ospaceType;
485private void CreateAndAddComplexType(Type type, StructuralType ospaceType, EdmProperty cspaceProperty, PropertyInfo clrProperty)
488if (SessionData.CspaceToOspace.TryGetValue((StructuralType)cspaceProperty.TypeUsage.EdmType, out propertyType))
490Debug.Assert(propertyType is StructuralType, "Structural type expected.");
506private void CreateAndAddNavigationProperty(StructuralType cspaceType, StructuralType ospaceType, NavigationProperty cspaceProperty, PropertyInfo clrProperty)
511Debug.Assert(ospaceRelationship is StructuralType, "Structural type expected.");
518foundTarget = SessionData.CspaceToOspace.TryGetValue((StructuralType)((CollectionType)cspaceProperty.TypeUsage.EdmType).TypeUsage.EdmType, out findType);
521Debug.Assert(findType is StructuralType, "Structural type expected.");
529foundTarget = SessionData.CspaceToOspace.TryGetValue((StructuralType)cspaceProperty.TypeUsage.EdmType, out findType);
532Debug.Assert(findType is StructuralType, "Structural type expected.");
561private bool TryFindAndCreatePrimitiveProperties(Type type, StructuralType cspaceType, StructuralType ospaceType, PropertyInfo[] clrProperties)
599private bool TryFindAndCreateEnumProperties(Type type, StructuralType cspaceType, StructuralType ospaceType, PropertyInfo[] clrProperties, List<Action> referenceResolutionListForCurrentType)
622var ot = ospaceType;
638private void CreateAndAddEnumProperty(Type type, StructuralType ospaceType, EdmProperty cspaceProperty, PropertyInfo clrProperty)
693Debug.Assert(ospaceEndTypes[0] is StructuralType);
694Debug.Assert(ospaceEndTypes[1] is StructuralType);
714private static StructuralType GetRelationshipEndType(RelationshipEndMember relationshipEndMember)
739private void AddScalarMember(Type type, PropertyInfo clrProperty, StructuralType ospaceType, EdmProperty cspaceProperty, EdmType propertyType)
749var cspaceType = cspaceProperty.DeclaringType;