最近做一个c#.net的项目,要用到数据库连接
但每个页面都要建立个连接太麻烦,如果专门
写一个类进行连接会很方便有谁知道怎样写这
样一个连接类?

解决方案 »

  1.   

    写一个DataProvider
    也就是数据操作类,方便扩展
      

  2.   

    在配置文件中(例如web.config)存放连接字符串,
      

  3.   

    用微软DataAccessApplicationBlock中的SQLHelper,传入连接字符串就可以调用了
      

  4.   

    在项目中添加一个类Database.cs
    内容如下:(先给你一个,供参考)
    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Xml;
    using System.IO;
    using System.Drawing;
    using System.Drawing.Imaging;
    using System.Data;
    using System.Data.SqlClient;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;namespace CommonDatabase
    {
    /// <summary>
    /// SysHelper 的摘要说明。
    /// </summary>
    public class Database
    //public class Database
    {
    public Database()
    {
    //
    // TODO: 在此处添加构造函数逻辑
    //
    }
    /// <summary>
    /// 1.获取数据库的连接,返回值需判断是否为null
    /// </summary>
    /// <returns></returns>
    public static SqlConnection GetSqlConnection()
    {
    string strCnn = System.Configuration.ConfigurationSettings.AppSettings["SQLConnectionString"].ToString();
    try
    {
    SqlConnection sqlCnn = new SqlConnection(strCnn);
    sqlCnn.Open();
    return sqlCnn;
    }
    catch
    {
    return null;
    }
    }
    /// <summary>
    /// 获取SqlCommand对象
    /// </summary>
    /// <returns></returns>
    public static SqlCommand GetSqlCommand()
    {
    SqlConnection sqlCnn = GetSqlConnection();
    if(sqlCnn == null)
    return null;
    else
    {
    SqlCommand sqlCmm = new SqlCommand();
    sqlCmm.Connection = sqlCnn;
    return sqlCmm;
    }
    }
    /// <summary>
    /// 2.根据Select--查询语句,返回DataSet
    /// </summary>
    /// <param name="strSql">Select SQL语句</param>
    /// <returns>返回值需判断是否为空</returns>
    public static DataSet GetDataSet(string strSql)
    {
    try
    {
    using( SqlConnection sqlCnn = GetSqlConnection() )
    {
    SqlDataAdapter dataAdapter = new SqlDataAdapter( strSql, sqlCnn );
    DataSet dataSet = new DataSet();
    dataAdapter.Fill( dataSet );
    return dataSet; 
    }
    }
    catch
    {
    return null;
    } }
            }
    }然后在using CommonDatabase;然后就可以直接用了:EX:this.GetDataSet("select * from tablename");
      

  5.   

    如果是新人就不要自己写吧,先用用MS的那个ApplicationBlock
      

  6.   

    到这里去下http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/entlib.asp
      

  7.   

    在配置文件中(例如web.config)存放连接字符串:<?xml version=”1.0” encoding=”utf-8” ?>
    <configuration>
    <appSetting>
         <add key=”constring”
    Value=”server=;database=;uid=;pwd=;” />
          </appSettings>
    </configuration>
    访问配置文件的类属于System.Configuration命名空间
    访问连接的文件:
    Using System.Configuration;
     SqlConnection con=new SqlConnection(Configurations.AppSettings[“constring”]);