This is an internal API not subject to the same compatibility standards as public APIs. It may be changed or removed without notice in any release. Represents a description of an object that needs to be persisted.
Наследование: IStoreEntityType, IConventionStoreEntity
Пример #1
0
        public InternalStoreEntityBuilder(StoreEntityType storeEntity)
        {
            CheckValue.NotNull(storeEntity, nameof(storeEntity));

            Metadata = storeEntity;
            _clrType = storeEntity.ClrType;
        }
Пример #2
0
        /// <summary>
        /// <inheritdoc/>
        /// </summary>
        public IConventionStoreEntity AddStoreEntity(Type clrType)
        {
            if (_storeEntityTypes.TryGetValue(clrType, out var storeEntity))
            {
                return(storeEntity);
            }

            var declareStoreEntity = new StoreEntityType(clrType);

            _storeEntityTypes.Add(clrType, declareStoreEntity);
            return(declareStoreEntity);
        }
Пример #3
0
        public StoreProperty(string name,
                             Type propertyType,
                             PropertyInfo propertyInfo,
                             FieldInfo fieldInfo,
                             MemberInfo memberInfo,
                             StoreEntityType storeEntityType)
        {
            CheckValue.NotNullOrEmpty(name, nameof(name));
            CheckValue.NotNull(propertyType, nameof(propertyType));
            CheckValue.NotNull(storeEntityType, nameof(storeEntityType));

            Name             = name;
            _clrPropertyType = propertyType;
            _clrPropertyInfo = propertyInfo;
            _clrFieldInfo    = fieldInfo;
            _clrMemberInfo   = memberInfo;
            _originalEntity  = storeEntityType;

            Builder = new InternalStorePropertyBuilder(this);
        }