请高手添加注释,帮忙解答疑惑!
using System;
using System.Data.SqlClient;
using System.Data;
using System.Collections.Generic;namespace kms.Models
{
    public class CategoryModel:BaseModel
    {
        protected string tablename = "category";        public int id;        public string category_name;        public List<CategoryModel> list()
        {
            string sql = "SELECT id,category_name FROM " + this.tablename + " ORDER BY id DESC";
            SqlDataReader sdr = getReader(sql, null);
            List<CategoryModel> flist = new List<CategoryModel>();
            if (sdr.HasRows)
            {
                while (sdr.Read())
                {
                    CategoryModel mm = new CategoryModel();
                    mm.id = Convert.ToInt32(sdr["id"].ToString());
                    mm.category_name = sdr["category_name"].ToString();
                    flist.Add(mm);
                }
            }
            sdr.Close();
            return flist;
        }        public void delete(int id)
        {
            string sql = "DELETE FROM " + this.tablename + " WHERE id=@id";
            SqlParameter[] parArray = { 
                CommonLb.makeParam("@id",SqlDbType.Int,id)
            };
            excuteQuery(sql, parArray);
        }        public int add(string category_name)
        {
            string sql = "INSERT INTO " + this.tablename + "(category_name) VALUES(@category_name)";
            SqlParameter[] parArray = { 
                CommonLb.makeParam("@category_name",SqlDbType.NVarChar,category_name)
            };
            return excuteQuery(sql, parArray);
        }
        public CategoryModel getOne(int id)
        {
            if (id <= 0)
                return null;
            CategoryModel mm = new CategoryModel();
            SqlParameter[] parArray = { 
                CommonLb.makeParam("@id",SqlDbType.Int,id)
            };
            string sql = "SELECT TOP 1 id,category_name FROM " + this.tablename + " WHERE id=@id";
            SqlDataReader sdr = getReader(sql, parArray);
            if (sdr.HasRows)
            {
                sdr.Read();
                mm.category_name = sdr["category_name"].ToString();
                mm.id = Convert.ToInt32(sdr["id"].ToString());
            }
            sdr.Close();
            return mm;
        }
        public int update(int id, string category_name)
        {
            string sql = "UPDATE " + this.tablename + " SET category_name=@category_name WHERE id=@id";
            SqlParameter[] parArray = { 
                CommonLb.makeParam("@category_name",SqlDbType.NVarChar,category_name),
                CommonLb.makeParam("@id",SqlDbType.Int,id)
            };
            return excuteQuery(sql, parArray);
        }
    }
}

解决方案 »

  1.   

    一些最基本的数据库操作,牵涉到SQL语句,增、删、查、改,建议找本书看下。
      

  2.   

    那一本最基础的C#书籍,先看语法,然后看些高级应用,就行了!呵呵!List, SqlClient的等等可以直接MSDN!!
      

  3.   

    LZ学习学习ADO.NET
    其中几个类的用法明白后,你就知道这断代码是什么意思了。
      

  4.   

    我闲using System;
    using System.Data.SqlClient;
    using System.Data;
    using System.Collections.Generic;namespace kms.Models
    {
        public class CategoryModel : BaseModel
        {
            protected string tablename = "category";        public int id;        public string category_name;        public List<CategoryModel> list()//返回泛型集合(这个集合中的数据类型也是自定义的,CategoryModel,可以是个结构)的方法,
                                              //查找id、category_name.
            {
                string sql = "SELECT id,category_name FROM " + this.tablename + " ORDER BY id DESC";
                SqlDataReader sdr = getReader(sql, null);
                List<CategoryModel> flist = new List<CategoryModel>();
                if (sdr.HasRows)
                {
                    while (sdr.Read())
                    {
                        CategoryModel mm = new CategoryModel();//CategoryModel 中至少有id 、category_name 两个成员
                        mm.id = Convert.ToInt32(sdr["id"].ToString());
                        mm.category_name = sdr["category_name"].ToString();
                        flist.Add(mm);
                    }
                }
                sdr.Close();
                return flist;
            }        public void delete(int id)//删除id方法, 带参数(id)的sql命令
            {
                string sql = "DELETE FROM " + this.tablename + " WHERE id=@id";
                SqlParameter[] parArray = { 
      CommonLb.makeParam("@id",SqlDbType.Int,id)
      };
                excuteQuery(sql, parArray);
            }        public int add(string category_name)//添加种类名
            {
                string sql = "INSERT INTO " + this.tablename + "(category_name) VALUES(@category_name)";
                SqlParameter[] parArray = {  
      CommonLb.makeParam("@category_name",SqlDbType.NVarChar,category_name)
      };
                return excuteQuery(sql, parArray);
            }
            public CategoryModel getOne(int id)//根据 id号查找并返回第一条符合条件的CategoryModel类型的数据
            {
                if (id <= 0)
                    return null;
                CategoryModel mm = new CategoryModel();
                SqlParameter[] parArray = {  
      CommonLb.makeParam("@id",SqlDbType.Int,id)
      };
                string sql = "SELECT TOP 1 id,category_name FROM " + this.tablename + " WHERE id=@id";
                SqlDataReader sdr = getReader(sql, parArray);
                if (sdr.HasRows)
                {
                    sdr.Read();
                    mm.category_name = sdr["category_name"].ToString();
                    mm.id = Convert.ToInt32(sdr["id"].ToString());
                }
                sdr.Close();
                return mm;
            }
            public int update(int id, string category_name)// 更新根据参数id、category_name 更新记录
            {
                string sql = "UPDATE " + this.tablename + " SET category_name=@category_name WHERE id=@id";
                SqlParameter[] parArray = {  
      CommonLb.makeParam("@category_name",SqlDbType.NVarChar,category_name),
      CommonLb.makeParam("@id",SqlDbType.Int,id)
      };
                return excuteQuery(sql, parArray);
            }
        }
    }
    //楼主可能要了解学习的是 c#中的sql操作。看书学习吧。
      

  5.   

    一个好的程序员不是写好代码,而是写好注释,你的结构看起来有点混乱,没有层次,你学的ADO.Net难道就是一层?还是要按正常套路啊
      

  6.   

    加个断点debug一下不就知道了,别这么懒
      

  7.   

    谁能告诉我一下:java与C#有什么区别。。
      

  8.   

    做数据开发,可以使用PDF.NET数据开发框架,一行代码搞定Web表单的增,删,改,查,无需任何代码即可分页。看下源码比你工作半年进步还多。