首页 > 解决方案 > 如何在asp.net中检查用户类型

问题描述

我正在尝试用 asp.net 制作一个网站。

我有不同用户的用户表,他们都有自己的用户类型,默认情况下它是“U”,如用户。对于管理员,它是管理员中的“A”。

我的网站也有一个标题部分。我希望我的代码读取当前会话处于活动状态的用户类型,如果它是“U”用户类型,则使用 UserHome 分配标题菜单,如果它是“A”用户类型,则使用 Adminpanel 分配标题菜单。

我怎么做?我尝试过这种方式,但没有奏效。

public void checkUserType()
{
    String CS = ConfigurationManager.ConnectionStrings["BoothsConnectionString1"].ConnectionString;
    using (SqlConnection con = new SqlConnection(CS))
    {
        SqlCommand cmd = new SqlCommand("select * from Users", con);
        con.Open();
        SqlDataAdapter sda = new SqlDataAdapter(cmd);
        DataTable dt = new DataTable();
        sda.Fill(dt);

        string Utype;
        Utype = dt.Rows[0][5].ToString().Trim();
        if (Utype == "U")
        {

            userhome.Visible = true;
            adminpanel.Visible = false;
        }
        if (Utype == "A")
        {
            adminpanel.Visible = true;
            userhome.Visible = false;
        }
    }
}

标签: c#sqlasp.net

解决方案


  public void checkUserType()
{
    String CS = ConfigurationManager.ConnectionStrings["BoothsConnectionString1"].ConnectionString;
    using (SqlConnection con = new SqlConnection(CS))
    {
        SqlCommand cmd = new SqlCommand("select * from Users", con);
        con.Open();
        SqlDataAdapter sda = new SqlDataAdapter(cmd);
        DataTable dt = new DataTable();
        sda.Fill(dt);


        foreach (DataRow dr in dt.Rows)
        {
            if (dr["YourUserTypeColumnName"] == "U")
            {

                userhome.Visible = true;
                adminpanel.Visible = false;
            }
            if (dr["YourUserTypeColumnName"] == "A")
            {
                adminpanel.Visible = true;
                userhome.Visible = false;
            }
        }

    }
}

请检查这个。


推荐阅读