// datareader 转实体 T GetResult <T>(IDataReader reader, IMapping map) { T result = default(T); if (typeof(T) == typeof(DataTable)) { DataTable table = new DataTable(); table.Load(reader); result = (T)(object)table; } else if (typeof(T) == typeof(DataSet)) { InternalDataSet data = new InternalDataSet(); data.Load(reader, LoadOption.OverwriteChanges, null, new DataTable[] { }); result = (T)(object)data; } else { TypeDeserializer deserializer = new TypeDeserializer(this, reader, map); result = deserializer.Deserialize <T>(); } return(result); }
/// <summary> /// Internal constructor. /// </summary> /// <param name="schemaFile"></param> /// <param name="state"></param> protected internal BaseDataSet(string schemaFile, InternalDataSet state) : base(schemaFile, state) { }