/// <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;
        }
Exemple #9
0
        } // 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;
        }