电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

Enterprise-Library20--企业库常用方法VIP免费

Enterprise-Library20--企业库常用方法_第1页
1/40
Enterprise-Library20--企业库常用方法_第2页
2/40
Enterprise-Library20--企业库常用方法_第3页
3/40
EnterpriseLibrary2.0--企业库常用方法下面我们重点来说一下DataAccessApplicationBlock操作数据库的方法。1、创建一个数据库实例DataBase//创建一个默认的数据库实例Databasedefaultdb=DatabaseFactory.CreateDatabase();//创建一个名为ConnectionString的数据库实例Databasedb=DatabaseFactory.CreateDatabase("ConnectionString");//上面两种创建数据库实例的方法的数据库可以是任何类型的数据库,取决于Config文件中的配置信息//下面的这种方面展示了创建一个SQL数据库的实例,需引用Microsoft.Practices.EnterpriseLibrary.Data.Sql程序集SqlDatabasedbsql=DatabaseFactory.CreateDatabase("ConnectionString")asSqlDatabase;//我们同样也可以不通过配置文件来创建数据库实例,如下stringconnString="server=.;database=EnterpriseLibrary;uid=sa;pwd=";SqlDatabasenocofigdb=newSqlDatabase(connString);2、创建DbCommandDbCommand的创建方式有两种:一种是为了调用存储过程创建,一种是为了执行一般的SQL语句而创建,具体用哪一种方式,就要看你需要执行的是存储过程还是SQL语句了。//创建一个SQL语句的DbCommandDatabasedb=DatabaseFactory.CreateDatabase();stringsql="Select*fromperson";DbCommandSqldbcomm=db.GetSqlStringCommand(sql);//创建一个存储过程的DbCommand//存储过程名称为GetAllPersonByNamestringprocName="GetAllPersonByName";DbCommandProcdbcomm=db.GetStoredProcCommand(procName);3、存储过程中的参数处理DataBase类中包含多种传递存储过程参数的方法,也包含了得到和设置参数值的方法,如下:AddParameter.为存储过程传递一个参数(输入型或输出型)AddInParameter.为存储过程传递一个输入型参数AddOutParameter.为存储过程传递一个输出型参数GetParameterValue.获取某存储过程指定参数的值SetParameterValue.为存储过程的某个参数赋值,当你需要用同一个方法来执行插入多条记录时,就可参数给参数赋值的方法来进行//创建一个存储过程的DbCommand//存储过程名称为GetAllPersonByNamestringprocName="GetAllPersonByName";DbCommandProcdbcomm=db.GetStoredProcCommand(procName);//添加一个输入型的参数db.AddInParameter(Procdbcomm,"@sex",DbType.String);//添加一个输出型的参数db.AddOutParameter(Procdbcomm,"@name",DbType.String,20);//设置参数的值db.SetParameterValue(Procdbcomm,"@sex","男");//执行存储过程db.ExecuteNonQuery(Procdbcomm);//得到输出参数的值,注意转化返回值类型stringoutvalue=(string)db.GetParameterValue(Procdbcomm,"@name");4、执行ExecuteReader方法返回一个IDataReader类型的数据集因为ExecuteReader方法在一开始执行时就打开了一个与数据库的连接,所以我们必须注意在使用结束时关闭连接,而用using(){}语句块就能确保ExecuteReader方法在执行完毕时关闭与数据库的连接。什么时候使用此方法:返回的数据仅仅用来显示,并不对其进行修改,删除等操作;绑定返回的数据到WebFormControl不需要缓存返回的数据,用完就释放using(IDataReaderreader=db.ExecuteReader(CommandType.Text,"select*fromperson")){DataGrid1.DataSource=reader;DataGrid1.DataBind();}5、执行ExecuteDataSet方法返回一个DataSetpublicDataSetGetPersonList(){Databasedb=DatabaseFactory.CreateDatabase();DbCommanddbcomm=db.GetSqlStringCommand("select*fromperson");returndb.ExecuteDataSet(dbcomm);}什么时候使用此方法:需要返回多表数据;如果你需要逐一访问数据库的每一条记录,这个时候如果使用DataReader的话,则会使与数据库的连接一直处于打开的状态,长此以往,就会使应用程序的性能和可伸缩性大大降低;需要和其他的应用程序交换数据;6、执行ExecuteNonQuery该方法返回的是SQL语句执行影响的行数,我们可以利用该方法来执行一些没有返回值的操作(Insert,Update,Delete)publicvoidAddPerson(){Databasedb=DatabaseFactory.CreateDatabase();DbCommanddbcomm=db.GetSqlStringCommand("insertintopersonvalues(1,'shy','女...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

Enterprise-Library20--企业库常用方法

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部