예제 #1
0
파일: DBAccess.cs 프로젝트: xiaopohou/NYear
        protected List <T> GetList <T>(IDataReader reader, int StartIndex, int MaxRecord)
        {
            if (reader == null)
            {
                throw new ArgumentNullException(nameof(reader));
            }
            List <T>    list = new List <T>();
            IDataReader Dr   = reader;

            if (Dr.FieldCount > 0)
            {
                while (StartIndex > 0)
                {
                    if (!Dr.Read())
                    {
                        return(list);
                    }
                    StartIndex--;
                }
                var create = ODAReflection.GetCreator <T>(Dr);
                while (Dr.Read())
                {
                    list.Add(create(Dr));
                    MaxRecord--;
                }
            }
            return(list);
        }
예제 #2
0
파일: DBAccess.cs 프로젝트: xiaopohou/NYear
        private static List <T> ReadData <T>(IDataReader Dr)
        {
            List <T> list = new List <T>();

            if (Dr.FieldCount > 0)
            {
                var create = ODAReflection.GetCreator <T>(Dr);
                while (Dr.Read())
                {
                    list.Add(create(Dr));
                }
            }
            return(list);
        }