You are creating one single SqlParameter variable and try to use it to define two parameters.
That cannot work.
Your code should better look like:
con.Open();
using (SqlCommand comm = new SqlCommand("select [Add] from Role1 where Role_Name=@Role and Pages=@Pages", con))
{
comm.Parameters.AddWithValue("@Role", Session["Role"]);
comm.Parameters.AddWithValue("@Pages", "Checkin");
SqlDataReader reade = comm.ExecuteReader();
while (reade.Read())
{
Session["Add"] = Convert.ToString(reade["Add"]);
}
Button2.Visible = (Session["Add"].Equals("Y", StringComparison.InvariantCultureIgnoreCase));
}
con.Close();
Hope this helps. Good luck.