public bool UserLogin(string userName,string Password,ref string strError)
{
if (userName.Trim()=="") //如果用户名为空的话,则登录失败
{
MessageBox.Show(this,"用户名为空,请输入有效的用户名");
return false;
}

if (Password.Trim()=="") //如果用户密码为空的话,则登录失败
{
MessageBox.Show(this,"用户密码不能为空,请输入有效的用户密码");
return false;
} bool myLoginFlag=false; //初始化登录失败标志
string strSql=null;
//string strError=null;
DataSet ds =null;

DataTable myTable =null;
DataRow myTableRow=null; MyData mData =new MyData();
//进行登录代码
try
{
strSql="select UserName,Password from t_User_Info where Username='"+ userName + "' and Password='"+ Password +"'";
if(mData.Connect())
{
if(mData.QuerySQL(strSql,ref ds,ref strError))
{ myTable=ds.Tables[0]; //第一个表的数据 myTableRow=myTable.Rows[0];//第一行数据

if(myTableRow["Username"].ToString()==userName && myTableRow["Password"].ToString()==Password )
{
myLoginFlag=true;//设置登录标志为成功
}
else
{
strError="the Username;"+ userName +" and Password is Not Corrected for this System";
}
}
else
{
strError="Error:"+strSql; //返回错误的查询语句,以便于调试
}
}
else
{
strError="Error:database Connected Faile";
//myLoginFlag=false;
}
}
catch(Exception e)
{
strError=e.ToString();
///myLoginFlag=false;
} return myLoginFlag;
}
public class MyData
{
//相关变量,用于操作数据库的类成员变量 private string m_strConnect="";
//连接到数据库的链接字符串 private SqlConnection m_Connection=null;
//数据连接对像

private string m_strSql="";
//查询语句的字符串 private bool m_ConnectFlag=false;
//链接结果标志

private string m_strDefaultCon="server=localhost;Initial Catalog =ttoa;User ID=sa; Password=fibonaxiong"; public MyData()
{
//
// TODO: 在此处添加构造函数逻辑
//
m_strConnect=m_strDefaultCon;
}

public bool Connect() //定义连接函数
{
try
{
m_Connection=new SqlConnection(m_strConnect);
m_Connection.Open();
m_ConnectFlag=true;
}
catch(Exception e)
{
MessageBox.Show(e.ToString(),"错误");
m_ConnectFlag=false;
}
return m_ConnectFlag;
}
//执行查询的函数,
//查询的结果通过myDataSet 进行返回
//myStrSQLError返回查询执行的错误
public bool QuerySQL(string myStrSQL,ref DataSet myDataSet,ref string myStrSQLError)
{
DataSet myLocalDataSet=new DataSet();
string myStrLocalError=null;
bool mySuccessFlag=false;

try
{
if(m_ConnectFlag) //如果能够正确连接上数据库的话
{
SqlCommand myCommand=new SqlCommand (myStrSQL,m_Connection);
//建立连接命令 SqlDataAdapter mydataadapter=new SqlDataAdapter(myCommand);
//建立数据集 mydataadapter.Fill(myLocalDataSet,"temp");
//填充数据集 mySuccessFlag=true;
//设置标志
}
else
{
myStrLocalError="[Connection Failed]:"
+"Please Check the Connection Parameters.";
//设置错误字符串
}
}
catch(SqlException e)
{
foreach(SqlError myError in e.Errors)
{
//反馈回错误信息
myStrLocalError+="[Error Source]:"+
myError.Source+"[Error Message]:" 
+myError.Message ; }
}
finally
{
myStrSQLError=myStrLocalError;
//取得错误信息
myDataSet=myLocalDataSet;
//取得数据表单集合
}
return mySuccessFlag;
}
}