繁体   English   中英

如何获取当前登录用户的登录ID(WinForms)

[英]How to get the login ID of the current user logged in (WinForms)

我有一个名为 tbl_login 的数据库,它存储所有帐户的数据。 它还存储每个用户的角色。 比如登录的用户是一个供应商,如果供应商增加了新的产品,就必须取回登录ID,这样我就知道增加了新产品的供应商就是当前登录的供应商。

这是我到目前为止尝试过的,这是从 tbl_login 中选择的

sqldataset = new DataSet();
            cmd = new SqlCommand("SELECT * from tbl_login WHERE role='supplier'", con);
            adapt = new SqlDataAdapter(cmd);
            adapt.Fill(sqldataset);

            int loginID = Convert.ToInt32(sqldataset.Tables[0].Rows[0]["loginID"]);

在这部分代码中,我想检索当前登录的用户

cmd1 = new SqlCommand("INSERT INTO tbl_Stocks(loginID, OrderQuantity, ProductID, Price, TotalPrice, OrderedDateAndTime, Status) VALUES (@loginID, @orderStocks, @prodIDInsert, @priceEach, @totalPrice, @orderDAT, @status)", con);


                int Order = Convert.ToInt32(dgvSalesRepOrder.Rows[i].Cells[1].Value.ToString());
                int price = Convert.ToInt32(sqldataset.Tables[0].Rows[0]["Price"]);

                int total = price * Order;
                string stat = "Pending";
                cmd.Parameters.AddWithValue("@loginID", loginID);//loginID that must be retrieved
                cmd.Parameters.AddWithValue("@orderStocks", Order);//Order Stocks
                cmd.Parameters.AddWithValue("@prodIDInsert", ProcID);//ProductID
                cmd.Parameters.AddWithValue("@priceEach", price);//Price
                cmd.Parameters.AddWithValue("@totalPrice", total);//totalPrice
                cmd.Parameters.AddWithValue("@orderDAT", dAt);//DateAndTime
                cmd.Parameters.AddWithValue("@status", stat);//Status
                cmd.ExecuteNonQuery();

我只是想出了该怎么做

我添加了一个新的 class 全局变量,其中包括 ff.

public static int loginID;
public static String username;
public static String role;

在我想检索当前登录用户的部分,我只是调用了 class 全局。 它成功地做了我想做的事

cmd.Parameters.AddWithValue("@loginID", global.loginID);//loginID that must be retrieved

在登录表单中,必须声明:

global.loginID = Convert.ToInt32(dt.Rows[0]["loginID"].ToString().Trim());
global.username = dt.Rows[0]["username"].ToString().Trim();
global.role = dt.Rows[0]["role"].ToString().Trim();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM