日期:2014-05-18  浏览次数:20779 次

初学C#,想知道,怎么单独把与数据库链接的代码单另写到一个类里?
原来有vb的基础,现在老师要求把程序全都改成C#的,虽然都用的。net的基础,但是与数据库的链接方面有点问题。

下面的代码是曾今vb.net做的一个登录系统的与数据库链接的一部分。
但是我写在的是这个按钮的单击事件中。
现在要求是用C#做,而且还要把数据库的连接单另写在一个类当中。。。。
通过几天的学习 稍微有一点C#的语法基础,但是这方面还是不知道怎么做。
请高人指点。
VB.NET code


        Dim str As String 'Data Source=主机地址 Initial Catalog=数据库
        str = "Data Source=HC\SQLEXPRESS;Initial Catalog=Student;Integrated Security=True" 'windows身份验证方式
        Dim con As New SqlConnection(str)
        con.Open() '打开数据库
        Dim sql As String = "SELECT * from user_info where user_ID='" & TextBox1.Text.ToString().Trim() & "'and user_PWD='" & TextBox2.Text.ToString().Trim() & "'and user_Des='" & ComboBox1.Text.ToString().Trim() & "'"
        Dim cmd As New SqlCommand(sql, con) '下达SQL命令
        Dim reader As SqlDataReader  '创建SqlDataReader的对象,DataReader从数据库中读取对象
        reader = cmd.ExecuteReader 'DataReader对象赋值给对象Reader(读取表中的数据)
        If reader.Read() = True Then 'Reader()方法,读取正常(找到数据),否则值为False
           
            main.Label1.Text = Me.ComboBox1.Text.ToString.Trim '窗体中 label 的内容传递
            main.Show() '显示 mian窗口
            Main.Text = "学生成绩管理系统--用户:" & TextBox1.Text & "--权限:" & ComboBox1.Text 'main 中 Text显示内容.
            Me.Close()
        Else
            MsgBox("登录失败,请检查用户名,密码,及登录权限是否正确")
        End If



------解决方案--------------------
VB的话,新建一个模块。

C#新建一个类:
static class DBHelper
{
public static string ConnectionStr = ...
public static DataSet ExecuteSQL(string sql)
{
...
}
}
------解决方案--------------------
探讨
VB的话,新建一个模块。

C#新建一个类:
static class DBHelper
{
public static string ConnectionStr = ...
public static DataSet ExecuteSQL(string sql)
{
...
}
}

------解决方案--------------------
新建一个类,连接代码如下面,可这里可以另行增加写datatable,或者datset都行,大同小异了

class 类名
{
#region 代码中用到的变量
string ConString = "连接字符串";
SqlConnection Scon; //声明链接对象a
#endregion

#region 连接数据库
/// <summary>
/// 连接数据库
/// </summary>
/// <returns></returns>
public SqlConnection GetCon()
{
Scon = new SqlConnection(ConString);
Scon.Open();
return Scon;
}
#endregion
------解决方案--------------------
新手建议不要自己写类,建议直接使用微软企业库,不容易出问题,上面有如何调用的示例.
Enterprise Library 
网上有文档,自己写很容易不关链接,或者效率低,这些常用的底层东西,要学会使用框架,减少错误.

要学会用成熟框架,减少重复时间,降低出错概率


------解决方案--------------------
http://www.cnblogs.com/liushuijinger/archive/2012/03/12/2391191.html
看看这个例子 是很简单的三层 里面的dal层就是你要的那个功能
------解决方案--------------------
http://www.cnblogs.com/JemBai/archive/2008/09/02/1281864.html

这里