我目前正在編寫一個小應用程序來跟蹤貨幣輸入和輸出,這只是爲了提高我的一般C#技能。對於我的登錄屏幕目前我有以下代碼C#登錄屏幕 - 在SQL表和更新字段中查找用戶
private void Login_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'spendingInsAndOutsDataSet.Users' table. You can move, or remove it, as needed.
this.usersTableAdapter.Fill(this.spendingInsAndOutsDataSet.Users);
}
private void button1_Click(object sender, EventArgs e)
{
string userNameText = userName.Text;
string passwordText = password.Text;
foreach (DataRow row in spendingInsAndOutsDataSet.Users)
{
if (row.ItemArray[4].Equals(userNameText) && row.ItemArray[5].Equals(passwordText))
{
MessageBox.Show("Login Successful");
MainGUI newForm = new MainGUI();
this.Visible = false;
newForm.Show();
break;
}
else
{
userName.Text = String.Empty;
password.Text = String.Empty;
MessageBox.Show("Login Failed");
break;
}
}
}
我所希望做當登錄SUCESSFUL是當前PC的計算機名寫一個字段中的用戶表中我的SQL數據庫。這樣當我開始創建記錄時,我可以快速找到我的UsersId(這是我的Transactions表中的外鍵)。
我知道你可以使用System.Enviroments路徑獲得活動機器名稱,但我不確定如何去編寫更新。我知道如何使用SqlCommand來做到這一點,但我想知道是否有更簡單的方法來使用我在ForEach循環中使用的DataRows。
在此先感謝,有任何問題讓我知道。
詹姆斯
使用'SqlCommand',不要試圖讓自己更難,你正試圖走下更糟糕的**路徑,而不是*更好*路徑 – Jason
謝謝你的迴應賈森。我目前已將應用程序設置爲使用SqlCommand,但如果有人仍然知道從DataSet訪問特定數據行的方式,我將非常感謝。 – jeastham1993
如果結果存在而不是全部返回,您最好提問數據庫。分開您想要實現的功能。 1.將密碼存儲在數據庫中時至少對密碼進行哈希處理 2.創建一個SQL命令,該命令將用戶名/密碼(散列)作爲參數並獲取ID行 3.如果ID行爲空 - 用戶wasn發現 - 如果它是一個有效的整數 - 那麼它是 – tsells