public EntityPropertDescriptor(IEntity entity, string propertyName)
            : base(propertyName, null)
        {
            this._entity = entity;
             this._propertyName = propertyName;

             _itemInfo = entity.Schema.Attributes.First((e) => e.Key == propertyName).Value;
        }
 ItemInfoKVP(ItemInfoKVP kvp)
 {
     Key = this.Key;
      Value = new SchemaItemInfo()
          {
             AllowNull = kvp.Value.AllowNull,
             DefaultValue = kvp.Value.DefaultValue,
             IsReadonly = kvp.Value.IsReadonly,
             TypeName = kvp.Value.TypeName
          };
 }
        public ItemInfoKVP()
        {
            _key = string.Empty;

             _value = new SchemaItemInfo();
        }