1,UI設置界面
2,啟動界面加載的時候,設置數據庫類型和連接字符串
#region Initial(),讀取Config配置文件,給Global的變量賦值 /// <summary> /// 讀取Config配置文件,給Global的變量賦值【放在啟動界面加載的事件中】 /// </summary> void Initial() { CommonMethods.SetPropertiesFromXml(ConfigFilePath + "ParameterList.xml", GlobalVariable.myParameter);//讀取配置文件賦值給儲存類的屬性 //設置數據庫類型和連接字符串 SqlSugarService.SetDBType(GlobalVariable.myParameter.DBType); SqlSugarService.SetConnectionString(GlobalVariable.myParameter.DBConStr); } #endregion
3,SqlSugarHelper
using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; /* * 手動添加SqlSugar.dll引用 */ namespace _009_TPS.DAL.Helper { public static class SqlSugarHelper { //連接字符串 public static string ConnectionString = string.Empty; //數據庫類型 public static DbType DBType = DbType.SqlServer; public static SqlSugarClient SqlSugarClient { get { return new SqlSugarClient(new ConnectionConfig() { ConnectionString = ConnectionString,//必填, 數據庫連接字符串 //DbType = DbType.Sqlite,//必填,選擇數據庫類型 //DbType = DbType.SqlServer ,//必填,選擇數據庫類型 DbType = DBType, IsAutoCloseConnection = true,//設置為true無需使用using或者Close操作,自動關閉連接,不需要手動關閉數據鏈接 InitKeyType = InitKeyType.SystemTable//默認SystemTable, 字段信息讀取, 如:該屬性是不是主鍵,是不是標識列等等信息 }); } } } }
4,SqlSugarService
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using SqlSugar; namespace _009_TPS.DAL.Helper { /// <summary> /// 設置數據庫的連接字符串 /// </summary> public static class SqlSugarService { /// <summary> /// 設置數據庫的類型 /// </summary> /// <param name="dbType"></param> public static void SetDBType(string dbType) { switch (dbType.ToLower()) { case "sqlserver": SqlSugarHelper.DBType = DbType.SqlServer; break; case "sqlite": SqlSugarHelper.DBType = DbType.Sqlite; break; case "mysql": SqlSugarHelper.DBType = DbType.MySql; break; default: SqlSugarHelper.DBType = DbType.SqlServer; break; } } /// <summary> /// 設置數據庫的連接字符串 /// </summary> /// <param name="ConnectionString"></param> public static void SetConnectionString(string ConnectionString) { SqlSugarHelper.ConnectionString = ConnectionString; } } }
比如:用戶的增刪改查
1,SysAdmin
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _009_TPS.Models { /// <summary> /// 登錄用戶類 /// </summary> public class SysAdmin { //登錄ID public int LoginId { get; set; } //登錄名稱 public string LoginName { get; set; } //登錄密碼 public string LoginPwd { get; set; } /// <summary> /// 角色 0:操作工 1:工程師 2:主管 /// </summary> public int UserRole { get; set; } /// <summary> /// 用戶卡號 /// </summary> public string UserCardNo { get; set; } } }
2,SysAdminService
using _009_TPS.DAL.Helper; using _009_TPS.Models; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _009_TPS.DAL { /// <summary> /// 用戶管理Service /// </summary> public class SysAdminService { /// <summary> /// 返回所有的用戶集合(admin除外) /// </summary> /// <returns>用戶對象集合</returns> public static List<SysAdmin> GetAllAdminDB() { return SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>().Where(c => c.LoginName.ToLower() != "admin") .ToList(); } /// <summary> /// 驗證登錄用戶結果(驗證用戶名和密碼和數據庫的是否一致) /// </summary> /// <param name="sysAdmin">用戶對象</param> /// <returns>用戶對象</returns> public static SysAdmin AdminLogin(SysAdmin sysAdmin) { var list = SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>().Where(c => c.LoginName.ToLower() == sysAdmin.LoginName && c.LoginPwd == sysAdmin.LoginPwd).ToList(); return list.Count == 0 ? null : list[0]; } /// <summary> /// 驗證登錄用戶結果(根據用戶卡號返回用戶對象) /// </summary> /// <param name="sysAdmin">用戶對象</param> /// <returns>用戶對象</returns> public static SysAdmin AdminLoginWithUserCardNo(SysAdmin sysAdmin) { var list = SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>() .Where(c => c.UserCardNo == sysAdmin.UserCardNo).ToList(); return list.Count == 0 ? null : list[0]; } /// <summary> /// 增:添加用戶 /// </summary> /// <param name="admin">用戶對象</param> /// <returns></returns> public static bool AddAdminDB(SysAdmin admin) { return SqlSugarHelper.SqlSugarClient.Insertable(admin).ExecuteCommand() == 1; } /// <summary> /// 根據用戶名判斷用戶是否存在 /// </summary> /// <param name="loginName">用戶名</param> /// <returns></returns> public static bool CheckLoginNameExit(string loginName) { return SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>().Where(c => c.LoginName == loginName).Count() > 0; } /// <summary> /// 根據卡號判斷用戶是否存在 /// </summary> /// <param name="loginName">卡號</param> /// <returns></returns> public static bool CheckUserCardNoExit(string userCardNo) { return SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>().Where(c => c.UserCardNo == userCardNo).Count() > 0; } /// <summary> /// 改:根據用戶名更新用戶 /// </summary> /// <param name="admin">用戶對象</param> /// <returns></returns> public static bool UpdateAdminDB(SysAdmin admin) { return SqlSugarHelper.SqlSugarClient.Updateable(admin).WhereColumns(c => c.LoginName) .ExecuteCommand() == 1; } /// <summary> /// 刪:更加用戶名刪除用戶 /// </summary> /// <param name="loginName">用戶名</param> /// <returns></returns> public static bool DeleteAdminDB(string loginName) { return SqlSugarHelper.SqlSugarClient.Deleteable<SysAdmin>().Where(c => c.LoginName == loginName) .ExecuteCommand() == 1; } /// <summary> /// 根據用戶名稱返回用戶對象 /// </summary> /// <param name="loginName">用戶名</param> /// <returns>用戶對象</returns> public static SysAdmin GetSysAdminByLoginName(string loginName) { var query = SqlSugarHelper.SqlSugarClient.Queryable<SysAdmin>().Where(c => c.LoginName == loginName) .ToList(); if (query.Count > 0) { return query[0]; } else { return null; } } } }
3,
//添加用戶 private void btn_add_Click(object sender, EventArgs e) { if (this.txt_loginPwd.Text.Trim().Length > 0 && this.txt_loginName.Text.Trim().Length > 0) { SysAdmin admin = new SysAdmin() { LoginName = this.txt_loginName.Text.Trim(), LoginPwd = this.txt_loginPwd.Text.Trim(), UserRole = this.rdb_operation.Checked ? 0 : this.rdb_engineer.Checked ? 1 : 2, UserCardNo = this.txt_userCardNo.Text.Trim() }; if (SysAdminService.AddAdminDB(admin)) { MessageBox.Show("新用戶:" + $"“{admin.LoginName}”" + "添加成功", "添加用戶"); UpdateAdmin(); } else { MessageBox.Show("新用戶:" + $"“{admin.LoginName}”" + "添加失敗", "添加用戶"); } } else { MessageBox.Show("用戶名稱或用戶密碼不能為空","添加用戶"); } } //修改用戶 private void btn_Modify_Click(object sender, EventArgs e) { if (this.txt_userCardNo.Text.Trim().Length > 0 && this.txt_loginName.Text.Trim().Length > 0) { //檢測用戶是否存在 if (!SysAdminService.CheckLoginNameExit(this.txt_loginName.Text)) { MessageBox.Show("該用戶名稱不存在,請添加后再修改", "修改用戶"); return; } SysAdmin admin = new SysAdmin() { LoginName = this.txt_loginName.Text.Trim(), LoginPwd = this.txt_loginPwd.Text.Trim(), UserRole = this.rdb_operation.Checked ? 0 : this.rdb_engineer.Checked ? 1 : 2, UserCardNo = this.txt_userCardNo.Text.Trim() }; if (SysAdminService.UpdateAdminDB(admin)) { MessageBox.Show("用戶:" + $"“{admin.LoginName}”" + "信息修改成功", "修改用戶"); UpdateAdmin(); } else { MessageBox.Show("用戶:" + $"“{admin.LoginName}”" + "信息修改失敗", "修改用戶"); } } else { MessageBox.Show("用戶名稱或用戶密碼不能為空", "添加用戶"); } } //刪除用戶 private void btn_delete_Click(object sender, EventArgs e) { if (this.dgv_data.SelectedRows.Count > 0) { string loginName = this.dgv_data.SelectedRows[0].Cells["LoginName"].Value.ToString(); //刪除確認 DialogResult result = MessageBox.Show("確認要刪除用戶 [" + loginName + "] 嗎?", "刪除詢問", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (result == DialogResult.Cancel) return; if (SysAdminService.DeleteAdminDB(loginName)) { MessageBox.Show("用戶:" + $"“{loginName}”" + "刪除成功", "刪除用戶"); UpdateAdmin(); } else { MessageBox.Show("用戶:" + $"“{loginName}”" + "刪除失敗", "刪除用戶"); } } else { MessageBox.Show("請選擇要刪除的用戶", "刪除用戶"); } } //關閉 private void btn_close_Click(object sender, EventArgs e) { this.Close(); this.Dispose(); } //更新 private void UpdateAdmin() { this.dgv_data.DataSource = null; this.dgv_data.DataSource = SysAdminService.GetAllAdminDB(); }