seanly

 

数据层的编写。。。防sql攻击注入

大家在使用asp.net开发网站时,很多时候都会使用Gridview+sqlObjectDataSource控件,你可以很快的把数据库一张表展示到网页上,而不需要编写任何的代码,甚至只要稍微的设置一下Gridview就可以有insert、update、delete的功能。但到了我们开发比较大型的项目的时候,sqlObjectdataSource就往往变得不适用了。在我们的网站上就需要三层架构的思想来使我们的网站变得更加的灵活。
      下面我们首先介绍数据访问层——DAL层:

      .net2.0版的DAL层:

 

 public class SqlHelper
    {
        private static string connStr = "连接字符串";

        public static int ExecComm(string sqlStr, SqlParameter[] par)
        {
            SqlConnection conn = new SqlConnection(connStr);
            conn.Open();
            SqlCommand comm = new SqlCommand();
            comm.Connection = conn;
            comm.CommandType = CommandType.Text;
            comm.CommandText = sqlStr;
           
            if (par != null)
            {
                foreach (SqlParameter p in par)
                {
                    comm.Parameters.Add(p);
                }
            }

            int i = comm.ExecuteNonQuery();

            conn.Close();
            conn.Dispose();
            return i;
        }
    }


    public class UserDal
    {
        public int AddUser(string userName, string password)
        {
            string sqlStr = "insert into Users (userName,password) values (@userName,@password)";

            SqlParameter[] par = {
                                     new SqlParameter("@userName",userName),
                                     new SqlParameter("@password",password)
                                 };
            return SqlHelper.ExecComm(sqlStr, par);
        }
    }

 

这样就很简单的实现了DAL层。

posted on 2009-12-30 17:24  seanly  阅读(146)  评论(0编辑  收藏  举报

导航