Response.Write(Session["RoleId"].ToString()=="A")返回False
Response.Write(Session["RoleId"].ToString()) 却输出A
.............................
怎么会出现这样的问题

解决方案 »

  1.   

    Response.Write(Session["RoleId"].ToString().Length) 输出什么?
      

  2.   

    Response.Write(Session["RoleId"].ToString().Trim()=="A")
    估计返回true
      

  3.   

    谢谢各位,还有个问题啊 
    public bool IsAdmin(int cintforumid,string cstruserid)
             {
        SqlConnection conn=new SqlConnection("Server=.;Database=bbs;Uid=66;Pwd=123456");
    SqlCommand cmd =new SqlCommand();
    cmd.Connection=conn;
    cmd.CommandType=CommandType.StoredProcedure;
    cmd.CommandText="Isforummanager"; SqlParameter intfumid=new SqlParameter("@intforumid",SqlDbType.Int,4);
    intfumid.Value=cintforumid;
    cmd.Parameters.Add(intfumid); SqlParameter strusid=new SqlParameter("@struserid",SqlDbType.NChar,30);
    strusid.Value=cstruserid;
    cmd.Parameters.Add(strusid);
                conn.Open();
    int co=Convert.ToInt32(cmd.ExecuteScalar());
    conn.Close();
    if(co>0)
    {
    return true;
    }
    else
    {
    return false;
    }

    }
    我这样调用IsAdmin(Convert.ToInt32(Session["ForumId"]),Session["UserId"].ToString())
    返回的是False 我用Response.write 输出的时候 Session["ForumId"] 为2
    Session["UserId"].ToString() 为19371873
    在查询分析器把这两个代入前面的Isforummanager存储过程的时候 结果却是1 应该返回是true
    不懂那里出错了