您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“基于C#如何實現(xiàn)宿舍管理系統(tǒng)”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“基于C#如何實現(xiàn)宿舍管理系統(tǒng)”吧!
首先通過創(chuàng)建C#的Windows窗體應(yīng)用程序,名字可以自行設(shè)置,框架可以選用默認(rèn)的。
這是我的項目主頁面,主要包括4個Label類,3個Button類,2個radioButton1,1個pictureBox1。主要的設(shè)計界面就如圖所示。命名和圖片大家可以自行的設(shè)置,通過對組件的Text屬性進行設(shè)置,radioButton具有一個Checked屬性,可以控制默認(rèn)的多選框。(例如我的在用戶)
主頁面代碼主要包括驗證登錄信息,通過與SQL查詢來驗證用戶信息,以及打開對象的對話框。
首先我們寫一個Login的登錄方法用來判斷登錄,隨后會跳轉(zhuǎn)到別的窗口(會在下一次的教程中編寫)。代碼如下。
public void Login() { //用戶 if (radioButton1.Checked == true) { DataBase DB = new DataBase(); string sql = $"select * from [User] where id='{textBox1.Text}' and password='{textBox2.Text}'" ; IDataReader dc = DB.read(sql); if (dc.Read()) { Data.UID = dc["id"].ToString(); Data.UName = dc["name"].ToString(); MessageBox.Show("登錄成功"); User1 user = new User1(); this.Hide(); user.ShowDialog(); this.Show(); } else { MessageBox.Show("登陸失敗"); } DB.Close(); } //管理員 if (radioButton2.Checked == true) { DataBase DB = new DataBase(); string sql = $"select * from [Admin] where id='{textBox1.Text}' and password='{textBox2.Text}'"; IDataReader dc = DB.read(sql); if (dc.Read()) { MessageBox.Show("登錄成功"); Admin1 admin = new Admin1(); this.Hide(); admin.ShowDialog(); this.Show(); } else { MessageBox.Show("登陸失敗"); } DB.Close(); } }
隨后雙擊登錄button,輸入以下代碼,用以判斷空值。
private void button1_Click(object sender, EventArgs e) { if (textBox1.Text != "" && textBox2.Text != "") { Login(); } else { MessageBox.Show("輸入有空,請重新輸入"); } }
這個按鈕就沒啥難點直接上代碼了,雙擊退出Button。
private void button2_Click(object sender, EventArgs e) { this.Close(); }
用以跳轉(zhuǎn)的按鈕,也是雙擊注冊Button,同樣的跳轉(zhuǎn)的窗口將在下次教程中講解。
private void button2_Click(object sender, EventArgs e) { this.Close(); }
隨后我們的代碼里還要新建一個DataBase.cs用以創(chuàng)建SQL連接。代碼如下。
using System.Data.SqlClient; namespace HomeWork { class DataBase { SqlConnection sc; public SqlConnection connect() { string str= @"Data Source=.;Initial Catalog=DormitoryDB;integrated security=true"; //位置(這個地方根據(jù)自己的需要修改) sc = new SqlConnection(str); //連接 sc.Open(); //打開 return sc; //返回對象 } public SqlCommand command(string sql) { SqlCommand cmd = new SqlCommand(sql, connect()); return cmd; } public int Execute(string sql) //更新 { return command(sql).ExecuteNonQuery(); } public SqlDataReader read(string sql) //讀取 { return command(sql).ExecuteReader(); } public void Close() { sc.Close(); } } }
(1)SQL打開
代碼都有了但是SQL配置還未完成。首先你得安裝SQL數(shù)據(jù)庫打開
(2)SQL登錄
我用的是默認(rèn)Windows身份驗證,也可以用管理員登錄。
(3)新建數(shù)據(jù)庫
登錄后新建一個數(shù)據(jù)庫,如下。
(3)新建數(shù)據(jù)表
之后根據(jù)自己的需要新建表格。我將我的數(shù)據(jù)表展示一下。(可能不太嚴(yán)謹(jǐn)因為我的水平也有限)
還需要一個Data類用以保存用戶的ID等信息,便于后面的開發(fā)。
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace HomeWork { class Data { public static string UID = "", UName = ""; //用戶名和ID } } using System; using System.Data; using System.Windows.Forms; namespace HomeWork { public partial class Index : Form { public Index() { InitializeComponent(); } private void textBox2_TextChanged(object sender, EventArgs e) { } private void button1_Click(object sender, EventArgs e) { if (textBox1.Text != "" && textBox2.Text != "") { Login(); } else { MessageBox.Show("輸入有空,請重新輸入"); } } //登錄方法 public void Login() { //用戶 if (radioButton1.Checked == true) { DataBase DB = new DataBase(); string sql = $"select * from [User] where id='{textBox1.Text}' and password='{textBox2.Text}'" ; IDataReader dc = DB.read(sql); if (dc.Read()) { Data.UID = dc["id"].ToString(); Data.UName = dc["name"].ToString(); MessageBox.Show("登錄成功"); User1 user = new User1(); this.Hide(); user.ShowDialog(); this.Show(); } else { MessageBox.Show("登陸失敗"); } DB.Close(); } //管理員 if (radioButton2.Checked == true) { DataBase DB = new DataBase(); string sql = $"select * from [Admin] where id='{textBox1.Text}' and password='{textBox2.Text}'"; IDataReader dc = DB.read(sql); if (dc.Read()) { MessageBox.Show("登錄成功"); Admin1 admin = new Admin1(); this.Hide(); admin.ShowDialog(); this.Show(); } else { MessageBox.Show("登陸失敗"); } DB.Close(); } } private void button2_Click(object sender, EventArgs e) { this.Close(); } private void button3_Click(object sender, EventArgs e) { register register = new register(); register.ShowDialog(); } } }
到此,相信大家對“基于C#如何實現(xiàn)宿舍管理系統(tǒng)”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。