c# - 如何在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;
}
}
}
解决方案
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;
}
}
}
}
请检查这个。
推荐阅读
- python - 无论排序差异如何,如何比较 yaml 文件?
- forms - Google 表单上传权限
- javascript - 尝试使用 Jest 测试 React Redux 组件时无法读取未定义的属性
- javascript - 如何在anystock/anychart中计算AAPL的WMA(加权移动平均线)和Hull MA?
- kubernetes - 通过意图限制从启用了领事连接的服务到非领事连接服务的通信?
- reactjs - SyntaxError:无法在模块外部使用导入语句 - 核心 UI - React JS
- r - 对发现的每一年进行数据处理
- mongodb - MongoDb 聚合格式输出
- ruby - Ruby 将 csv 日期格式化为无效日期(argumentError)
- vba - Microsoft Visio VBA CustomUI 功能区帮助 - 更改 EditBox 的默认值