C#编写ASP.NET组件...

//访问数据库是每个程序员都想简化的工作,通过组件来完成,新手也变高手...

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Configuration;
using System.Data.OracleClient;

namespace NetAdo
{
    public class NetDB
    {
        private string ConnStr="";
  private OracleConnection OraConn;

  public NetDB()
  {
            ConnStr = ConfigurationManager.AppSettings["Oracle9iConnStr"];
   this.OraConn=new OracleConnection();
   if(ConnStr==null)
   {
     throw new Exception("ConnectionString is Null");
   }
   this.OraConn.ConnectionString=ConnStr;
  }

  public string ConnString
  {
   get
   {
    return ConnStr;
   }
  }


  private void ConnectionPrepare(bool ifBegin)
  {
   //检查连接字符串
   if(OraConn.ConnectionString==null)
   {
    throw new Exception("OleDbConnection's ConnectionString is null,execute Init()");
               
   }
   //根据参数执行相关操作
   if(ifBegin==true)
   {
    if(OraConn.State==ConnectionState.Closed)
    {
     OraConn.Open();
    }
   }
   else
   {
    if(OraConn.State==ConnectionState.Open)
    {
     OraConn.Close();
    }
   }
  }


  public DataSet RunSqlReturnDS(string sqlString)
  {
   DataSet ds=new DataSet();
   try
   {
    ConnectionPrepare(true);
    OracleCommand Cmd=OraConn.CreateCommand();
    Cmd.CommandText=sqlString;
    OracleDataAdapter adapter=new OracleDataAdapter(Cmd);
    adapter.Fill(ds);
   }
   catch(Exception ex)
   {
    throw new Exception(ex.Message);           
   }
   finally
   {
    ConnectionPrepare(false);
   }
   return ds;
  }

  public int RunSql(string sqlString)
  {
   int RowCount=0;
   try
   {
    ConnectionPrepare(true);
    OracleCommand Cmd=OraConn.CreateCommand();
    Cmd.CommandText=sqlString;
    RowCount=(int)Cmd.ExecuteNonQuery();
   }
   catch(Exception ex)
   {
    throw new Exception(ex.Message);           
   }
   finally
   {
    ConnectionPrepare(false);
   }
   return RowCount;
  }
    }
}
 

//页面调用
using NetAdo;

public partial class _Default : System.Web.UI.Page
{
    NetDB nd = new NetDB();
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            Response.Write(nd.ConnString.ToString() + "<br>");

            DataSet objectSet = new DataSet();
            objectSet = nd.RunSqlReturnDS("select * from tblszman where rownum<=10");
            Response.Write(objectSet.Tables[0].Rows.Count.ToString() + "<br>");
            int s = nd.RunSql("drop table temptu");
            Response.Write(s.ToString() + "<br>");
        }
        catch (Exception ex)
        {
            Response.Write("错误信息:" + ex.Message);
            Response.End();
        } 
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值