/// <summary> /// Löschen eines Userobjekts /// </summary> /// <param name="_User">User-Objekt mit geänderten Attributen</param> /// <returns>1 falls delete erfolgreich </returns> public int DeleteUser(clsUser _User) { // Übergabeparameter ID hinzufügen _myDAL.AddParam("ID", _User.ID, DAL.DataDefinition.enumerators.SQLDataType.INT); //Ausführen int _changedSets = _myDAL.MakeStoredProcedureAction("QUDeleteUserById"); return _changedSets; }
/// <summary> /// Delete User Object /// </summary> /// <param name="delUser">zu löschendes User-Objekt</param> /// <returns>true if successful</returns> public bool UserDelete(clsUser delUser) { // hier müsste noch gecheckt werden, ob der User gelöscht werden darf!? z.B. wenn er schon bestellt hat!? //if (_usrCol.InsertUser(delUser) == 1) // return true; //else // return false; return delUser.Delete(); }
/// <summary> /// Löschen eines Userobjekts /// </summary> /// <param name="_User">User-Objekt mit geänderten Attributen</param> /// <returns>1 falls delete erfolgreich </returns> public int DeleteUser(clsUser _User) { //DB-Provider instanziiert und eine Verbindung zur access-Datenbank aufgebaut DAL.DALObjects.dDataProvider _myProvider = DAL.DataFactory.GetAccessDBProvider(_databaseFile); // Übergabeparameter ID hinzufügen _myProvider.AddParam("ID", _User.ID, DAL.DataDefinition.enumerators.SQLDataType.INT); //Ausführen und veränderte Zeilen zurückgeben int _changedSets = _myProvider.MakeStoredProcedureAction("QUDeleteUserById"); return _changedSets; }
/// <summary> /// Ereignis beim Klick auf den Auswahlknopf zur DropDownList /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnDropDownSelect_Click(object sender, EventArgs e) { clsUser _myUser = new clsUser(); clsUserCollection _myUserCol = new clsUserCollection(); int _id = Convert.ToInt32(ddlUser.SelectedValue); _myUser = _myUserCol.GetUserById(_id); if (_myUser != null) lblMsg.Text = "Auswahl in DropDownList: " + _myUser.Name + " " + _myUser.Address; else lblMsg.Text = "Auswahl in DropDownList nicht gefunden: " + _id.ToString(); }
/// <summary> /// Ereignis bei DropDownList mit Autopostback, Code derselbe wie oben /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ddlUsersWithAutoPostback_SelectedIndexChanged(object sender, EventArgs e) { clsUser _myUser = new clsUser(); clsUserFacade _Users = new clsUserFacade(); // ddlUser.SelectedValue enthält die UID des ausgewälten Users int _id = Convert.ToInt32(ddlUsersWithAutoPostback.SelectedValue); _myUser = _Users.UserGetById(_id); if (_myUser != null) lblMsg.Text = "Auswahl in DropDownList2: " + _myUser.Name + " " + _myUser.Address; else lblMsg.Text = "Auswahl in DropDownList2 nicht gefunden: " + _id.ToString(); }
/// <summary> /// Liest alle User aus der DB und gibt sie als Liste zurück /// </summary> /// <returns></returns> public List<clsUser> GetAllUsers() { //Hier wird unser Dataset aus der DB mit allen Usern befüllt, DataSet _myDataSet = _myDAL.GetStoredProcedureDSResult("QUGetAllUsers"); //das DataSet enthält nur eine DataTable DataTable _myDataTable = _myDataSet.Tables[0]; //Instantiieren eine Liste von User-Objekten List<clsUser> _myUserList = new List<clsUser>(); //Lesen wir jetzt Zeile (DataRow) für Zeile foreach (DataRow _dr in _myDataTable.Rows) { //Wir füllen unsere Liste nach und nach mit neuen Usern clsUser _myUser = new clsUser(); _myUser = DatarowToClsUser(_dr); _myUserList.Add(DatarowToClsUser(_dr)); } return _myUserList; }
/// <summary> /// DatarowToClsUser(): Transforms a DataRow into a User Object /// </summary> /// <param name="_dr">DataRow</param> /// <returns>User-Objekt</returns> private clsUser DatarowToClsUser(DataRow _dr) { clsUser _myUser = new clsUser(); //und hier die Daten nach Index _myUser.ID = (int)_dr["UID"]; _myUser.Name = AddStringFieldValue(_dr, "UName"); _myUser.Address = AddStringFieldValue(_dr, "UAddress"); _myUser.Distance = AddIntFieldValue(_dr, "UDistance"); _myUser.IsActive = AddBoolFieldValue(_dr, "UIsActive"); _myUser.Role = AddIntFieldValue(_dr, "URole"); _myUser.Password = AddStringFieldValue(_dr, "UPassword"); return _myUser; }
/// <summary> /// Update eines Userobjekts /// </summary> /// <param name="_User">User-Objekt mit geänderten Attributen</param> /// <returns>1 falls Update erfolgreich </returns> public int UpdateUser(clsUser _User) { // Übergabeparameter hinzufügen // (Parameter in derselben Reihenfolge wie in der Access-Query) _myDAL.AddParam("Name", _User.Name, DAL.DataDefinition.enumerators.SQLDataType.VARCHAR); _myDAL.AddParam("Address", _User.Address, DAL.DataDefinition.enumerators.SQLDataType.VARCHAR); _myDAL.AddParam("Distance", _User.Distance, DAL.DataDefinition.enumerators.SQLDataType.INT); _myDAL.AddParam("Role", _User.Role, DAL.DataDefinition.enumerators.SQLDataType.INT); _myDAL.AddParam("IsActive", _User.IsActive, DAL.DataDefinition.enumerators.SQLDataType.BOOL); _myDAL.AddParam("Password", _User.Password, DAL.DataDefinition.enumerators.SQLDataType.VARCHAR); _myDAL.AddParam("ID", _User.ID, DAL.DataDefinition.enumerators.SQLDataType.INT); //Ausführen und veränderte Zeilen zurückgeben int _changedSets = _myDAL.MakeStoredProcedureAction("QUUpdateUserById"); return _changedSets; }
} // UserInsert() /// <summary> /// Update User Object /// </summary> /// <param name="updUser">User-Objekt mit upzudatenenden Attributen</param> /// <returns>true if successful</returns> public bool UserUpdate(clsUser updUser) { return(updUser.Update()); } // UserUpdate()
/// <summary> /// User Insert /// </summary> /// <returns>true, wenn Insert erfogreich</returns> public bool UserInsert(clsUser newUser) { // hier könnte man checken ob es den User schon in der DB gibt !? Wollen wir doppelte Usernamen haben? if (_usrCol.InsertUser(newUser) == 1) return true; else return false; }
/// <summary> /// Update User Object /// </summary> /// <param name="updUser">User-Objekt mit upzudatenenden Attributen</param> /// <returns>true if successful</returns> public bool UserUpdate(clsUser updUser) { return updUser.Update(); }
/// <summary> /// Liest alle User aus der DB und gibt sie als Liste zurück /// </summary> /// <returns></returns> public List<clsUser> getAllUsers() { //Hier wird ein DB-Provider instanziiert und eine Verbindung zur Access-Datenbank aufgebaut DAL.DALObjects.dDataProvider _myProvider = DAL.DataFactory.GetAccessDBProvider(_databaseFile); //Hier wird unser Dataset aus der DB befüllt DataSet _myDataSet = _myProvider.GetStoredProcedureDSResult("QUGetAllUsers"); //das DataSet enthält nur eine DataTable DataTable _myDataTable = _myDataSet.Tables[0]; //Instantiieren eine Liste von User-Objekten List<clsUser> _myUserList = new List<clsUser>(); //Lesen wir jetzt Zeile (DataRow) für Zeile foreach (DataRow _dr in _myDataTable.Rows) { //Wir füllen unsere Liste nach und nach mit neuen Usern clsUser _myUser = new clsUser(); _myUser = DatarowToClsUser(_dr); _myUserList.Add(DatarowToClsUser(_dr)); } return _myUserList; }
/// <summary> /// Update eines Userobjekts /// </summary> /// <param name="_User">User-Objekt mit geänderten Attributen</param> /// <returns>1 falls Update erfolgreich </returns> public int UpdateUser(clsUser _User) { //DB-Provider instanziiert und eine Verbindung zur access-Datenbank aufgebaut DAL.DALObjects.dDataProvider _myProvider = DAL.DataFactory.GetAccessDBProvider(_databaseFile); // Jetzt müssen wir erstmal die Übergabeparameter hinzufügen // (Parameter in derselben Reihenfolge wie in der Access-Query) _myProvider.AddParam("Name", _User.Name, DAL.DataDefinition.enumerators.SQLDataType.VARCHAR); _myProvider.AddParam("Address", _User.Address, DAL.DataDefinition.enumerators.SQLDataType.VARCHAR); _myProvider.AddParam("Distance", _User.Distance, DAL.DataDefinition.enumerators.SQLDataType.INT); _myProvider.AddParam("IsAdmin", _User.IsAdmin, DAL.DataDefinition.enumerators.SQLDataType.BOOL); _myProvider.AddParam("Password", _User.Password, DAL.DataDefinition.enumerators.SQLDataType.VARCHAR); _myProvider.AddParam("ID", _User.ID, DAL.DataDefinition.enumerators.SQLDataType.INT); //Ausführen und veränderte Zeilen zurückgeben int _changedSets = _myProvider.MakeStoredProcedureAction("QUUpdateUserById"); return _changedSets; }