首页 / 网页编程 / ASP.NET / ASP.NET企业开发框架IsLine FrameWork系列之五--DataProvider 数据访问(中)
        
            ASP.NET企业开发框架IsLine FrameWork系列之五--DataProvider 数据访问(中)2011-09-21 博客园 李鸣使用DataProvider前,需要先在web.config中配置以下节点,添加于 <configSections></configSections>之间:<IsLine.Data.Configuration>
      <DataBaseConnection>
         <DBType>IsLine.Data.DataTypeEnum.DataBaseType.SqlServer</DBType>
         <Server>Server IP</Server>
         <UserID>sa</UserID>
         <PwdType>Cryptography.Decrypting</PwdType>  // or  <PwdType>Cryptography.StrengthDecrypting</PwdType> or  <PwdType>Cryptography.None</PwdType>
         <Pwd>111111</Pwd>
         <DataBase>UML</DataBase> //SqlServer only
      </DataBaseConnection>
</IsLine.Data.Configuration>其中DataBaseConnection指明数据库类型,PwdType指明密码加密策略,IsLine Provider内置3中策略 供选择,如配置文件所示。以上示例为针对SqlServer,以下为Oralce节点配置方法:<IsLine.Data.Configuration>
      <DataBaseConnection>
         <DBType>IsLine.Data.Configuration.OracleConnectString</DBType>
         <Server>TNS别名</Server>
         <UserID>sa</UserID>
         <PwdType>Cryptography.Decrypting</PwdType>  // or  <PwdType>Cryptography.StrengthDecrypting</PwdType> or  <PwdType>Cryptography.None</PwdType>
         <Pwd>111111</Pwd>
         <OtherPlus>Provider=MSDAORA.1; Persist Security Info=False;</OtherPlus>   //Oracle Only
      </DataBaseConnection>
    </IsLine.Data.Configuration>或者可以使用以下简单配置方法,免去节点配置的麻烦:SQLSERVER:<add key=" IsLine.Data.Configuration.SqlServerConnectString " value="Data Source=Server IP;User;Password=111111;Integrated Security=no;Enlist=false;Pooling=true;" />ORACLE:<add key="IsLine.Data.Configuration.OracleConnectString" value="Data Source=TNS别 名;User;Password=111111;Integrated Security=no;Enlist=false;Pooling=true;" />节点配置好后,使用以下方法调用,调用时分为面向连接与非连接两种方式,面向连接的操作(例如返 回DataSet/Reader/Adapter等)使用前须进行实例化,使用后须调用.Dispost()方法释放资源,Dispost() 是一个经过DataProvider重写的方法,一旦调用将会释放所有资源,包括Connection、Command、 DataReader等,而面向非连接操作则直接调用即可。如果使用DataReader、 Adapter等为面向连接操作, 单纯执行sql语句为非连接操作,例如访问数据库单纯执行依据sql语句可以使用:OracleProvider.ExecuteNonQuery();或SqlProvider.ExecuteNonQuery();