//单步执行到if(Reader.Read())时Reader.Read()为false,没有进入if内
//但连续执行时,if内的代码被执行了,说明Reader.Read()为true
//我确定代码没有问题而且数据库可以查到要找的值,因为我换了其它人的编译器
//都可以正常单步进入if内,我以为是DEBUG出了问题修复和重装.NET我都试了,也无济于世.
//我觉得可能是哪个地方设置有问题,急切盼望高人帮忙!
public static User GetUser(int UserID)
{
    SqlConnection con = null;
    SqlCommand cmd = null;
    string s = System.Configuration.ConfigurationSettings.AppSettings["jzg"];
    try
    {
        con = new SqlConnection(s);
        cmd = new SqlCommand("SELECT * FROM Users WHERE ( Id = " + UserID + ")",con);
        con.Open();
        SqlDataReader Reader =  cmd.ExecuteReader();
        if(Reader.Read())//此处单步时为false
        {
            User thisuser = new User();
            thisuser.ID = int.Parse(Reader["Id"].ToString().Trim());
            thisuser.NAME = Reader["UserName"].ToString().Trim();
            thisuser.PASSWORD = InfoPP.SystemManage.UserDbManager.Decrypt3DES(Reader["UserPsw"].ToString().Trim(),"CERESOFT");
            thisuser.TRUENAME = Reader["TrueName"].ToString().Trim();
            thisuser.PSWQUESTION = Reader["PswQuestion"].ToString().Trim();
            thisuser.PSWANSWER = Reader["PswAnswer"].ToString().Trim();
            thisuser.EMAIL = Reader["Email"].ToString().Trim();
            thisuser.ADDTIME = Reader["AddTime"].ToString().Trim();
            thisuser.UPDATETIME = Reader["UpdateTime"].ToString().Trim();
            thisuser.LOGINCOUNT = int.Parse(Reader["LoginCount"].ToString().Trim());
            thisuser.INTERIOR = Reader["IsInterior"].ToString().Trim();
            thisuser.STATE = Reader["State"].ToString().Trim();
            thisuser.AUDITING = Reader["Auditing"].ToString().Trim();
            thisuser.RightsOfRead = int.Parse(Reader["RightsOfRead"].ToString().Trim());
            Reader.Close();
            return thisuser;
        }
        else
        {
            return null;
        }
    }
    catch(Exception ex)
    {
        System.Console.Write(ex.Message);
        return null;
    }
    finally
    {
        cmd.Dispose();
        con.Close();
    }
}