欢迎来到天天文库
浏览记录
ID:34558695
大小:251.12 KB
页数:41页
时间:2019-03-07
《enterprise-library20--企业库常用方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、EnterpriseLibrary2.0--企业库常用方法下面我们重点来说一下DataAccessApplicationBlock操作数据库的方法。1、创建一个数据库实例DataBase//创建一个默认的数据库实例Databasedefaultdb=DatabaseFactory.CreateDatabase();//创建一个名为ConnectionString的数据库实例Databasedb=DatabaseFactory.CreateDatabase("ConnectionStringn);/
2、/上面两种创建数据库实例的方法的数据库可以是任何类型的数据库,取决于Config文件中的配置信息//下面的这种方面展示了创建一个SQL数据库的实例,需引用Microsoft.Practices.EnterpriseLibrary.Data.Sql程序集SqlDatabasedbsql=DatabaseFactory.CreateDatabase(nCormectionString11)asSqlDatabase;〃我们同样也可以不通过配置文件来创建数据库实例,如下stringconnString=
3、Hserver二・;database=EnterpriseLibrary;uid二sa;pwd二";SqlDatabasenocofigdb二nowSqlDatabase(connString);2、创建DbCoimnandDbCommand的创建方式有两种:一种是为了调用存储过程创建,一种是为了执行一般的SQL语句而创建,具体用哪一种方式,就要看你需要执行的是存储过程还是SQL语句了。//创建一个SQL语句的DbCommandDatabasedb=DatabaseFactory.CreateDa
4、tabase();stringsql="Select*frompersonn;DbCommandSqldbcomm二db.GetSqlStringCommand(sql);//创建一个存储过程的DbCommand//存储过程名称为GetAlIPersonByNamestringprocName=nGetAlIPersonByNamen;DbCommandProcdbcomm=db.GetStoredProcCommand(procName);3、存储过程中的参数处理DataBase类中包含多种传递
5、存储过程参数的方法,也包含了得到和设置参数值的方法,如下:AddParameter・为存储过程传递一个参数(输入型或输出型)AddInParamotcr・为存储过程传递一个输入型参数AddOutParameter・为存储过程传递一个输出型参数GetParameterValue.获取某存储过程指定参数的值SetParameterValue.为存储过程的某个参数赋值,当你需要用同一个方法来执行插入多条记录时,就可参数给参数赋值的方法来进行//创建一个存储过程的Dl^Command//存储过程名称为Ge
6、tAlIPersonByNamestringprocName=nGetAlIPersonByNamen;DbCommandProcdbcomm二db.GetStoredProcCommand(pTocNmne);//添加一个输入型的参数db.AddlnParameter(Procdbcomin,"@sex",DbType・String);〃添加一个输出型的参数db.AddOutParameter(Procdbcomm,',@nameH,DbType.String,20);//设置参数的值db.Se
7、tParameterValue(Procdbcomm,"@sex","男”);//执行存储过程db.ExecuteNonQuery(Procdbcomm);//得到输出参数的值,注意转化返回值类型stringoutvalue二(string)db.GetParameterValue(Procdbcomm,"@name'1);4、执行ExecuteReader方法返回一个IDataReader类型的数据集因为ExecuteReader方法在一开始执行时就打开了一个与数据库的连接,所以我们必须注意在使
8、用结束时关闭连接,而用usingO{}语句块就能确保ExecuteReader方法在执行完毕时关闭与数据库的连接。什么时候使用此方法:返回的数据仅仅用来显示,并不对其进行修改,删除等操作;绑定返回的数据到WebFormControl不需要缓存返回的数据,用完就释放using(IDataReaderreader=db.ExecuteReader(CommandType.Text,"select*fromperson'1))DataGridl.DataSource=reader;Dat
此文档下载收益归作者所有