在SQLHelper有一句:
public static readonly string CONN_STRING = ConfigurationSettings.AppSettings["SqlConnString"];
是用WEB.config来连接数据库的~只要在config里的<appSettings>中写好连接字符串就OK了.现在我不想把web方式中访问数据库的配置放在web.config里,在c/s中我想调用SQLHelper.dll及以前开发WEB时编好的连接类读写数据库,不知怎样访问,配置文件怎么做,放在哪?SQLHelper中如何修改?请教各位,谢谢! 
问题

解决方案 »

  1.   

    protected static string connstr = ConfigurationManager.ConnectionStrings["SQLConnString"].ConnectionString;
      

  2.   

    你在任何的类文件里都可读到这个连库的语句.
    SqlConnection conn = new SqlConnection(SQLHelper.connstr);
                conn.Open();
      

  3.   

     首先在c/s的项目上点右键 添加 引用 System.Configuration
     在相应的CS文件 引入类库 using System.Configuration
     在添加项目app.config 在
    <configuration></configuration> 中添加<appSettings></appSettings> 然就就不用我说的吧!不知道 你是不是想要的!
      

  4.   

    这么说吧.我想把我以前的CS链接类合并到SQLHelper这个里面,或是可以在这个里面调用也行.
    我的CS里是这样写的
    public string Foodqs
    {
    get
    {
    return SqlConnString;
    }
    set
    {
    switch(value)
    {
    case "getconn":  
    SqlConnString = "SERVER=(local);uid=;pwd=;DATABASE=";
    break;
    default:
    break;
    }
    }
    }
    我当然知道 在效果页上
    SqlConn DBconn = new SqlConn();
    DBconn.cn = "数据库名";
    这么一下就能连上数据库了,这是我以前写的 我现在就是想能在SQLHelper里读取到我的这个CS连接类,
    按我的理解是要修改CONN_STRING这个数据库字符串,但是我不明白怎么样才能把我的
    SqlConnString = "SERVER=(local);uid=;pwd=;DATABASE=";
    字符串赋值到SQLHelper里面?
      

  5.   

    你不是在webconfig里面都连库了吗,
    然后在sqlhelp里写这个
    protected   static   string   connstr   =   ConfigurationManager.ConnectionStrings["SQLConnString"].ConnectionString;
    在类里进行引用
    SqlConnection   conn   =   new   SqlConnection(SQLHelper.connstr); 
                            conn.Open();
    (也可以用别的引用方式进行连库)
      

  6.   

    可以直接放在sqlhelper中
    public   static   readonly   string   CONN_STRING   =   "连接字符串"
      

  7.   

    楼上的老大,我现在就是不想在WEB.config里连库啊...
    我有一个getconn.cs是专门连接数据库的类.现在就是想在SQLHelper里调用我的getconn.cs这个类,请问要怎么做啊?
      

  8.   

    8楼你说对我的想法了 只是我不想写死 想直接调用我的getconn.cs的连接类 这个可以吗?
      

  9.   

    可以在sqlhelp里这样连库 public static SqlConnection con = "database;user;等等";
    在你要用的地方用引用sqlhelp.con
    这样就可以了.
      

  10.   

    楼上的 你说的我知道啊...额...不知道是不是我表达方式有问题...我现在不是问应该怎么连接数据库.
    而是怎么才能在我的SQLHelper中调用我以前写好的连接类....]
    SQLHELPER是我下载的很有名一个封装执行类.
      

  11.   

    如果用WEB.CONFIG的话我已经调试出来了 很正常.但我现在想调用我以前的getconn.cs这个类里的连接字符串 不知道有什么好办法没有?
      

  12.   

    public string fconns {
    get
    {
    return SqlConnstr;
    }
    set
    {
    switch(value)
    {
    case "realty":  
    SqlConnstr = "SERVER=(local);uid=sa;pwd=;DATABASE=xget";  //OA库
    break;
    default:
    break;
    }
    }
    } public string SqlConnstring()  //定义一个方法:返回连接字符串
    {
    return SqlConnstr;
    } public string ReturnValue(string sql)
    {
    string returnValue = "";
    SqlConnection Conn=new SqlConnection(SqlConnstr);
    SqlCommand My_cmd=new SqlCommand(sql,Conn);
    Conn.Open();
    SqlDataReader dr=My_cmd.ExecuteReader();
    if (dr.Read())
    {
    returnValue = dr["vluer"].ToString();
    }
    dr.Close();
    Conn.Close();
    Conn.Dispose();
    return returnValue;
    }
    连接大概就是这样.
    然后我外面以前是这样的:
    SqlConn DBconn = new SqlConn();
    DBconn.Foodqs = "realty";
    // truename.Text = DBconn.ReturnValue("select name as vluer from work_personnel");
    这样就能输出了.哥们你看看有什么好办法吗?
      

  13.   

    不知道能不能在SQLHEPER里调用到SqlConnstring这个字符串....
      

  14.   

    把getconn.cs里的sqlconnection设为静态共有的不就能在sqlhelper里调用到了吗,跟在别的类里调用sqlhelper里应该是一样的
      

  15.   

    可以在SQLHelper.cs里面把你自己的那个类加进来,比如你的类getconn,连接串为connString,是定义好的,可能也是public static readonly string connString这样定义的,那就把SQLHelper.cs里的这句public   static   readonly   string   CONN_STRING   =   ConfigurationSettings.AppSettings["SqlConnString"]; 改为public string CONN_STRING = getconn.connString;应该就行了。因为你的getconn类里把connString实现为静态只读串了,这里读到后就可以用了。
    不知道楼主是这个意思不?
      

  16.   

    如果不想在Web.Config里加
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    <appSettings>
    <add key="SQLConnString" value="uid=...;PWD=...;DATA SOURCE=...;INITIAL CATALOG=.." />...
    </appSettings>
    </configuration>又想用SQLHelper.DLL
    那么只有:自己写个数据访问层程序集或者直接写在类里
    string SQLConnString="....." //链接字符串
    string sql="...";
    SqlConnection   Conn = new   SqlConnection(SQLConnString); 
    SqlCommand   Com =new   SqlCommand(sql,Conn); 
    Conn.Open(); 
      

  17.   

    19楼的 ,就是你说的意思,我的getconn里是这样的.请问要怎么调用?
    public   string   fconns { 
    get 

    return   SqlConnstr; 

    set 

    switch(value) 

    case   "realty":     
    SqlConnstr   =   "SERVER=(local);uid=sa;pwd=;DATABASE=xget";     //OA库 
    break; 
    default: 
    break; 


      

  18.   

    我现在在getconn加了个
    public string SqlConnstring() 
                    {
    return SqlConnstr;
    }
    然后在SQLHelper里改为
    SqlConn DBconn = new SqlConn();
    public string CONN_STRING =SqlConn.SqlConnstring();
    还是出错:
    非静态的字段、方法或属性“getconn.SqlConn.SqlConnstring()”要求对象引用
      

  19.   

    将变量SqlConnstr、方法SqlConnstring()前加static关键字
      

  20.   

    1.用STATIC
    public   static string   SqlConnstring()   
                                    { 
    return   SqlConnstr; 

    string   CONN_STRING   =getconn.SqlConn.SqlConnstring(); 2.将getconn作为基类
    public class SQLHelper:getconngetconn里的方法要为PROTECED或PUBLIC
    这样就什么直接可以用了
      

  21.   

    终于搞明白了
    既然string CONN_STRING这个没有办法传值就直接去掉.保留SQLHELPER的其它功能
    然后在前台所有页面调用时就直接把我自己写的那个类当做参数带进来~!我太笨了....一门的想在
    SQLHELPER里面定义..感觉大家帮助!
      

  22.   

    QQQQAnnie 辛苦你关天在我这里,虽然我没有从你那获得启发.但是你一直在坚持帮助我,给辛苦分.