コード例 #1
0
        /// <summary>
        ///     Extract data from the Entity object to current object
        /// </summary>
        /// <param name="entity"></param>
        internal void ExtractData(Entity entity)
        {
            Properties.Keys.ToList().ForEach(key =>
            {
                var property      = Properties[key];
                var genericMethod = EntityGet?.MakeGenericMethod(property.PropertyType);
                var value         = genericMethod?.Invoke(entity, new object[] { key });
                property.SetValue(this, value, null);
            });

            Fields.Keys.ToList().ForEach(key =>
            {
                var field         = Fields[key];
                var genericMethod = EntityGet?.MakeGenericMethod(field.FieldType);
                var value         = genericMethod?.Invoke(entity, new object[] { key });
                field.SetValue(this, value);
            });
        }
コード例 #2
0
        /// <summary>
        ///     Extract data from the Entity object to current object
        /// </summary>
        /// <param name="entity"></param>
        internal void ExtractData(Entity entity)
        {
            Properties.ForEach(tuple =>
            {
                var name          = tuple.Item1;
                var property      = tuple.Item2;
                var genericMethod = EntityGet?.MakeGenericMethod(property.PropertyType);
                var value         = genericMethod?.Invoke(entity, new object[] { name });
                property.SetValue(this, value, null);
            });

            Fields.ForEach(tuple =>
            {
                var name          = tuple.Item1;
                var field         = tuple.Item2;
                var genericMethod = EntityGet?.MakeGenericMethod(field.FieldType);
                var value         = genericMethod?.Invoke(entity, new object[] { name });
                field.SetValue(this, value);
            });
        }