闹不明白.net怎么封装数据库操作的呀,java里可以将数据库连接封装在一个类中,然后在其后的文件里引用这个类就行了。不知道.net怎么弄呀,请高手指教

解决方案 »

  1.   


    public class DataAccessBase
        {
            private string _storedprocedureName;
           //使用的存储过程名称
           protected string StoredProcedureName
            {
                get { return _storedprocedureName; }
                set { _storedprocedureName = value; }
            }
           //返回数据库的连接字符串
           protected string ConnectionString
           {
               get
               {
                   return ConfigurationManager.ConnectionStrings["SQLCONN"].ToString();
               }
           }
        }
    连接字符串在配置文件中,
    连接到数据库的方式是把字符串传递给SqlHelper.cs。
      

  2.   

    配置连接字符串使用数据库操作类如sqlhelper
    看看petshop
      

  3.   

    web.config:
        <!-- 连接字符串,(可以扩展支持不同数据库)如果是加密方式,上面一项要设置为true,如果是明文server=127.0.0.1;database=codematic;uid=sa;pwd=,上面设置为false -->
       <connectionStrings>
         <add name="ApplicationServices" connectionString="Data Source=.;Initial Catalog=xx;Integrated Security=True"/>
       </connectionStrings>SqlHelper.cs:
        protected string ConnectionString
           {
               get
               {
                   return ConfigurationManager.ConnectionStrings["SQLCONN"].ToString();
               }
           }
      

  4.   

    奥,这样啊,也就是说在web.config里写数据库连接,然后用类取得这个连接,在类里定义数据库的操作,然后在用到的时候引用这个类。是这样理解吧?
      

  5.   

    一样的,你JAVA都会了,C#也很容易。。C#就是JAVA的盗版,呵呵
      

  6.   

    SqlHelper.cs
    using System;
    using System.Data;
    using System.Configuration;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;
    using System.Data.SqlClient;
    using System.Configuration;
    /// <summary>
    /// Summary description for SqlHelper
    /// </summary>
    public class SqlHelper
    {
        string sqlconn = ConfigurationManager.ConnectionStrings["connStr"].ToString();
        /// <summary>
        /// 返回集合类型的查询 也可以单个查询
        /// </summary>
        /// <param name="sqlstr"></param>
        /// <param name="para"></param>
        /// <returns></returns>
        public DataTable DataRet(string sqlstr, SqlParameter[] para)
        {    
             DataTable dt = new DataTable();
            using (SqlConnection conn = new SqlConnection(sqlconn))
            {
                SqlCommand comm = new SqlCommand();
                comm.Connection = conn;
                comm.CommandText = sqlstr;
                comm.Parameters.AddRange(para);
                SqlDataAdapter sa = new SqlDataAdapter();
                sa.SelectCommand=comm;
                try
                {
                    conn.Open();
                    sa.Fill(dt);
                    conn.Close();
                }
                catch (Exception ex)
                {
                    conn.Close();
                    throw (ex);
                }
                finally
                {
                    conn.Close();
                }
                       }        return dt;
        }    /// <summary>
        /// 返回执行是否执行成功  增 删 改  都可以用这个
        /// </summary>
        /// <param name="sqlstr"></param>
        /// <param name="para"></param>
        /// <returns></returns>
        public int IntRet(string sqlstr, SqlParameter[] para)
        {
            int row = 0;
            using (SqlConnection conn = new SqlConnection(sqlconn))
            {
                SqlCommand comm = new SqlCommand();
                comm.Connection = conn;
                comm.CommandText = sqlstr;
                comm.Parameters.AddRange(para);
                try
                {
                    conn.Open();
                    row = comm.ExecuteNonQuery();
                    conn.Close();
                }
                catch (Exception ex)
                {
                    conn.Close();
                    throw (ex);
                }
                finally
                {
                    conn.Close();
                }        }
            return row;
        }}java不是由spring 托管了数据库连接么?