您的位置:首页 > 编程语言 > ASP

简单的ASP.NET三层架构数据库后台

2006-10-17 20:34 351 查看
 

 

简单的ASP.NET三层架构数据库后台

 


using System;


using System.Data;


using System.Data.SqlClient;


using System.Configuration;


namespace xxxxx




...{


    public class xxxx




    ...{


        private SqlConnection objSqlConn; 


        private SqlCommand objSqlCmd;


        private SqlAdapter objSqlAdapter;


                                           private SqlTransaction sqlTrans;


        private bool c_connect;


        private strint s_connect;


                                        




        


        public xxx():this(Configuration.AppSettings["xxx"]) 




        ...{




        }


        


        public xxx(string str)




        ...{


            if(s_connect==null)




            ...{


                s_connect=str;


                c_connect=true;


            }


            this.DataBaseOpen();


        }


        public bool DataBaseOpen()              //连接数据库




        ...{


            if(c_connect)




            ...{


                try




                ...{


                    if(objSqlConn==null)




                    ...{


                        objSqlConn=new SqlConnection(s_connect);


                        objSqlConn.Open();


                    }


                    if(objSqlCmd==null)




                    ...{


                        objSqlCmd=new SqlCommand();


                                


                    }


                    objSqlCmd.Connection=objSqlConn;


                }


                catch(SqlExection ex)




                ...{


                    return flase;


                    throw ex;


                }




            }


            return true;




        }


        


        public bool Execute(string strSql)       //执行数据库操作增删改查




        ...{


            bool flag;


            if(!DataBaseOpen())




            ...{


                             throw new Application("没有和数据库建立连接");


            }


            objSqlCmd.CommandType=CommandType.Text;


            objSqlCmd.CommandText=strSql;


            try




            ...{


                int index=objSqlCmd.ExecuteNonQuery()


                if(index==1)




                ...{


                    flag=true;


                }


                else




                ...{


                    flag=false;


                }


            }


            catch(SqlExection ex)




            ...{


                flag=false;


                throw ex;


            }


            return flag;


        }


        


        public void StartTransation()        //开始事务




        ...{


        


            if (!DataBaseOpen())




            ...{


                throw(new ApplicationException("没有建立数据库连接。"));


            }


        


            


            sqlTrans=sqlCn.BeginTransaction();


            sqlCmd.Transaction=sqlTrans;




            


        }


        public bool Commit()




        ...{


            if(this.flagEx)




            ...{


                try




                ...{


                    sqlTrans.Commit();          //提交事务


            


                }


                catch(SqlException ex)




                ...{


                    sqlTrans.Rollback();       // 回滚事务


                    return false;


                    


                }


                return true;


            }


            


            else




            ...{


                sqlTrans.Rollback();


                return false;


            }




            


            


        }






        public DataSet GetData(string strSql,string strTable)   //数据集




        ...{


            DataSet ds=new DataSet();


            objSqlAdapter=new SqlDataAdapter(strSql,objSqlConn);


            ds=objSqlAdapter.Fill(ds,strTable);


            return ds;


        }


        


        public void GetDisponse()   //回收




        ...{


            objSqlCmd.Disponse();


            objSqlAdapter.Disponse();


            objSqlConn.Disponse();


            objSqlCmd=null;


            objSqlAdapter=null;


            objSqlConn=null;


            


        


        }




        








    }






}

还 要前台的一个配置文件App.config

用于写连接数据库字符串

 


App.config




<? xml version=1.0 encoding=UTF-8>


<configuration>


<appSettings>


<add key="xxx" value="Data Source=主机;Initial Catalog=数据库名称;uid=x;pwd=x" >


</add>


</appSettings>


</configuration>

key="xxx"于后台Configuration.AppSettings["xxx"]

xxx要相同了. 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐