Exemplo n.º 1
0
        public T Get(K itemKey)
        {
            //default acar sozu ile instance yarat
            //misal: eger T int tipinde olarsa ozaman       :  int item = new int() ,stringdirse  :   string item = new string()  olur
            T item = default(T);

            SqlQueryGenerator <T> queryGenerator = new SqlQueryGenerator <T>();

            string deleteQuery = queryGenerator.GenerateSelectByIdQuery <K>(itemKey);

            using (SqlCommand command = new SqlCommand(deleteQuery, _Connection))
            {
                using (SqlDataReader rd = command.ExecuteReader())
                {
                    while (rd.Read())
                    {
                        object obj = Activator.CreateInstance(typeof(T));

                        PropertyInfo[] propertyInfos = obj.GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public);

                        foreach (var property in propertyInfos)
                        {
                            property.SetValue(obj, rd[property.Name]);
                        }
                        item = obj as T;
                    }
                }
            }
            return(item);
        }