public InternalNestedPropertyEntry( InternalPropertyEntry parentPropertyEntry, PropertyEntryMetadata propertyMetadata) : base(parentPropertyEntry.InternalEntityEntry, propertyMetadata) { this._parentPropertyEntry = parentPropertyEntry; }
public virtual PropertyEntryMetadata ValidateAndGetPropertyMetadata( string propertyName, Type declaringType, Type requestedType) { return(PropertyEntryMetadata.ValidateNameAndGetMetadata(this._internalContext, declaringType, requestedType, propertyName)); }
private InternalPropertyEntry Property( InternalPropertyEntry parentProperty, string propertyName, IList <string> properties, Type requestedType, bool requireComplex) { bool flag = properties.Count > 1; Type requestedType1 = flag ? typeof(object) : requestedType; Type declaringType = parentProperty != null ? parentProperty.EntryMetadata.ElementType : this.EntityType; PropertyEntryMetadata propertyMetadata = this.ValidateAndGetPropertyMetadata(properties[0], declaringType, requestedType1); if (propertyMetadata == null || (flag || requireComplex) && !propertyMetadata.IsComplex) { if (flag) { throw Error.DbEntityEntry_DottedPartNotComplex((object)properties[0], (object)propertyName, (object)declaringType.Name); } throw requireComplex?Error.DbEntityEntry_NotAComplexProperty((object)properties[0], (object)declaringType.Name) : Error.DbEntityEntry_NotAScalarProperty((object)properties[0], (object)declaringType.Name); } InternalPropertyEntry memberEntry = (InternalPropertyEntry)propertyMetadata.CreateMemberEntry(this, parentProperty); if (!flag) { return(memberEntry); } return(this.Property(memberEntry, propertyName, (IList <string>)properties.Skip <string>(1).ToList <string>(), requestedType, requireComplex)); }
/// <summary> /// Initializes a new instance of the <see cref="InternalNestedPropertyEntry" /> class. /// </summary> /// <param name="parentPropertyEntry"> The parent property entry. </param> /// <param name="propertyMetadata"> The property metadata. </param> public InternalNestedPropertyEntry( InternalPropertyEntry parentPropertyEntry, PropertyEntryMetadata propertyMetadata) : base(parentPropertyEntry.InternalEntityEntry, propertyMetadata) { Contract.Requires(parentPropertyEntry != null); _parentPropertyEntry = parentPropertyEntry; }
/// <summary> /// Initializes a new instance of the <see cref="InternalNestedPropertyEntry" /> class. /// </summary> /// <param name="parentPropertyEntry"> The parent property entry. </param> /// <param name="propertyMetadata"> The property metadata. </param> public InternalNestedPropertyEntry( InternalPropertyEntry parentPropertyEntry, PropertyEntryMetadata propertyMetadata) : base(parentPropertyEntry.InternalEntityEntry, propertyMetadata) { DebugCheck.NotNull(parentPropertyEntry); _parentPropertyEntry = parentPropertyEntry; }
// <summary> // Initializes a new instance of the <see cref="InternalPropertyEntry" /> class. // </summary> // <param name="internalEntityEntry"> The internal entry. </param> // <param name="propertyMetadata"> The property info. </param> protected InternalPropertyEntry(InternalEntityEntry internalEntityEntry, PropertyEntryMetadata propertyMetadata) : base(internalEntityEntry, propertyMetadata) { DebugCheck.NotNull(propertyMetadata); }
/// <summary> /// Initializes a new instance of the <see cref="InternalEntityPropertyEntry" /> class. /// </summary> /// <param name="internalEntityEntry"> The internal entry. </param> /// <param name="propertyMetadata"> The property info. </param> public InternalEntityPropertyEntry( InternalEntityEntry internalEntityEntry, PropertyEntryMetadata propertyMetadata) : base(internalEntityEntry, propertyMetadata) { }
protected InternalPropertyEntry( InternalEntityEntry internalEntityEntry, PropertyEntryMetadata propertyMetadata) : base(internalEntityEntry, (MemberEntryMetadata)propertyMetadata) { }