예제 #1
0
        /// <summary>
        /// Convert table to target enumerable
        /// </summary>
        /// <param name="table">Table</param>
        /// <param name="type">Target type</param>
        /// <param name="row">One-based mapping provider row index</param>
        /// <returns>Target enumerable</returns>
        public static IEnumerable <object> Convert(this Table table, Type type, int row, bool safeMode = false)
        {
            if (row < 1)
            {
                throw new ArgumentException("One-based row index must be greater than 0");
            }
            var map = new TableMapper(type).Map(table[row - 1]).Exclude(row);

            map.SafeMode = safeMode;
            ITableGenerator generator = map;

            return(generator.Instantiate(table));
        }
예제 #2
0
 /// <summary>
 /// Convert table to target enumerable
 /// </summary>
 /// <param name="table">Table</param>
 /// <param name="generator">Generator</param>
 /// <returns>Target enumerable</returns>
 public static IEnumerable <object> Convert(this Table table, ITableGenerator generator)
 {
     return(generator.Instantiate(table));
 }
예제 #3
0
 /// <summary>
 /// Convert table to target enumerable
 /// </summary>
 /// <typeparam name="T">Target type</typeparam>
 /// <param name="table">Table</param>
 /// <param name="generator">Generator</param>
 /// <returns>Target enumerable</returns>
 public static IEnumerable <T> Convert <T>(this Table table, ITableGenerator <T> generator) where T : new()
 {
     return(generator.Instantiate(table));
 }