• 我之前有过的ASP.NET数据层访问方法


    今天在博客园开博,希望能够在这个开放的平台上学到更多,也希望自己能够经常抽出时间增加博客数量,在写博客的同时思考程序代码,思考编程思想,同时沉淀技术.

          把我之前做三层Web开发的数据层访问代码拿出来讨论:大家可以在阅读代码后留下自己的看法。

    首先是获得数据库连接对象,我采用的是sqlServer2005 数据库

    1 privatestatic SqlConnection connection;
    2 publicstatic SqlConnection Connection
    3 {
    4 get
    5 {
    6 string connectionString = ConfigurationManager.AppSettings["ConnectionString"];
    7 if (connection ==null)
    8 {
    9 connection =new SqlConnection(connectionString);
    10 connection.Open();
    11 }
    12 elseif (connection.State == System.Data.ConnectionState.Closed)
    13 {
    14 connection.Open();
    15 }
    16 elseif (connection.State == System.Data.ConnectionState.Broken)
    17 {
    18 connection.Close();
    19 connection.Open();
    20 }
    21 return connection;
    22 }
    23 }

    执行返回int的存储过程,我主要用于查询

    代码

    执行有输出参数的sql语句或存储过程,如果使用存储过程,添加操作的存储过程中使用select @id=@@identity,程序接收这个输出值来判断添加是否成功。

    删除和更新操作中通过 select @@rowcount 获得行数如果是一来确定操作成功。

    代码

     执行sql语句或者存储过程获得dataReader

    代码

    执行有参存储过程,并返DataSet 

    代码

    主要用于查询的方法

    代码
    ///<summary>
    /// 执行有参SQL语句或者存储过程,并返回执行行数 存储过程中用select @@表示
    /// 0为存储过程 1为sql语句
    ///</summary>
    ///<param name="sql"></param>
    ///<param name="nType"></param>
    ///<param name="values"></param>
    ///<returns></returns>
    publicstaticint GetScalar(string sql,int nType, params SqlParameter[] values)
    {
    SqlCommand cmd
    =new SqlCommand(sql, Connection);
    if (nType ==0)
    {
    cmd.CommandType
    = CommandType.StoredProcedure;
    }
    if (nType ==1)
    {
    cmd.CommandType
    = CommandType.Text;

    }
    cmd.Parameters.AddRange(values);
    int result = Convert.ToInt32(cmd.ExecuteScalar());
    return result;
    }
  • 相关阅读:
    asp.net 文件下载
    net 数据库连接详解 相当经典啊
    取值:webconfig中的key
    通过监听的端口查找本机进程和服务思路
    以系统服务运行某个程序
    测底根除Windows流氓软件开机自动运行
    使用Wireshark在主机上抓取远程主机的数据流量
    记录Windows远程登录日志
    证书不匹配发出告警的解决方法
    WPS office云同步图标彻底删除方法
  • 原文地址:https://www.cnblogs.com/needrunning/p/1818472.html
Copyright © 2020-2023  润新知