/// <summary>
 /// Hydration method
 /// </summary>
 /// <param name="view">View</param>
 internal virtual void Initialize(System.Data.DataView view)
 {
     foreach (DataRowView rowView in view)
     {
         T entity = EntityBaseReadOnly.GetEntityInstance <T>();
         entity.Initialize(rowView);
         base.Add(entity);
     }
 }
 /// <summary>
 /// Hydration method
 /// </summary>
 /// <param name="reader">Reader</param>
 internal virtual void Initialize(System.Data.IDataReader reader)
 {
     while (reader.Read())
     {
         T entity = EntityBaseReadOnly.GetEntityInstance <T>();
         entity.Initialize(reader);
         base.Add(entity);
     }
 }
 /// <summary>
 /// Hydration method
 /// </summary>
 /// <param name="parent">Parent Entity</param>
 /// <param name="view">View</param>
 internal virtual void Initialize(System.Collections.IList parent, System.Data.DataView view)
 {
     foreach (DataRowView rowView in view)
     {
         T entity = EntityBaseReadOnly.GetEntityInstance <T>();
         entity.Initialize(rowView);
         entity.Parent = parent;
         base.Add(entity);
     }
 }
 /// <summary>
 /// Hydration method
 /// </summary>
 /// <param name="parent">Parent Entity</param>
 /// <param name="reader">Reader</param>
 internal virtual void Initialize(System.Collections.IList parent, System.Data.IDataReader reader)
 {
     while (reader.Read())
     {
         T entity = EntityBaseReadOnly.GetEntityInstance <T>();
         entity.Initialize(reader);
         entity.Parent = parent;
         base.Add(entity);
     }
 }
예제 #5
0
        /// <summary>
        /// Initialize New
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <returns></returns>
        internal static T InitializeNew <T>() where T : EntityBase
        {
            T entity = EntityBaseReadOnly.GetEntityInstance <T>();

            System.Type entityType = entity.GetType();

            List <ColumnInfo> defaultValues = ColumnInfo.GetColumnInfoDefaultValues(entityType);

            foreach (ColumnInfo column in defaultValues)
            {
                PropertyInfo propertyInfo = GetDatabaseColumnPropertyInfo(entityType, column.ColumnName);

                if (propertyInfo != null)
                {
                    SetPropertyValueIfNotNull(entity, propertyInfo, column.Value);
                }
            }

            entity.IsNew   = true;
            entity.IsDirty = true;

            return(entity);
        }