public void RimuoviLista(Lista lista, string username) { try { ListePreferite listePrefe = null; ISession sessione = _gestisciUtente.OpenConnection(); sessione.BeginTransaction(); ICriteria criteria = sessione.CreateCriteria <ListePreferite>(); listePrefe = (ListePreferite)criteria.Add(Expression.Like("Username", username)).UniqueResult(); List <Lista> listeSalvateNew = new List <Lista>(); foreach (Lista l in listePrefe.ListeSalvate) { if (l.Id != lista.Id) { listeSalvateNew.Add(l); } } listePrefe.ListeSalvate = listeSalvateNew; sessione.Update(listePrefe); sessione.Transaction.Commit(); sessione.Transaction.Dispose(); _gestisciUtente.RegisterOperazione("rimozione lista personale", username); } catch (Exception e) { throw new FaultException <BookFault>(new BookFault(e.Message)); } }
public void ModificaRecensione(Recensione recensione) { try { if (recensione != null) { ISession sessione = _gestisciUtente.OpenConnection(); sessione.BeginTransaction(); if (recensione.Punteggio != -1) { int id = recensione.Id; Recensione res = null; ICriteria criteria = sessione.CreateCriteria <Recensione>(); res = (Recensione)criteria.Add(Expression.Like("Id", id)).UniqueResult(); if (res != null) { res.Punteggio = recensione.Punteggio; res.Commento = recensione.Commento; sessione.Update(res); } _gestisciUtente.RegisterOperazione("modifica recensione personale", recensione.Username); } else { int id = recensione.Id; Recensione res = null; ICriteria criteria = sessione.CreateCriteria <Recensione>(); res = (Recensione)criteria.Add(Expression.Like("Id", id)).UniqueResult(); if (res != null) { res.Punteggio = -1; res.Username = ""; res.Commento = ""; res.Libro = null; sessione.Update(res); } _gestisciUtente.RegisterOperazione("cancellazione recensione personale", recensione.Username); } sessione.Transaction.Commit(); sessione.Transaction.Dispose(); } } catch (Exception e) { throw new FaultException <BookFault>(new BookFault(e.Message), new FaultReason(e.Message)); } }
public void CreaListaPersonale(string nome, string genere, string username) { try { ISession sessione = _gestisciUtente.OpenConnection(); sessione.BeginTransaction(); Lista lista = new Lista(nome, genere, username); lista.Username = username; sessione.Save(lista); sessione.Transaction.Commit(); sessione.Transaction.Dispose(); _gestisciUtente.RegisterOperazione("creazione lista personale", username); } catch (Exception e) { throw new FaultException <BookFault>(new BookFault(e.Message)); } }
public void RimuoviRecensione(Recensione recensione, string username) { try { RecensioniPreferite recPrefe = null; ISession sessione = _gestisciUtente.OpenConnection(); sessione.BeginTransaction(); ICriteria criteria = sessione.CreateCriteria<RecensioniPreferite>(); recPrefe = (RecensioniPreferite)criteria.Add(Expression.Like("Username", username)).UniqueResult(); List<Recensione> recSalvateNew = new List<Recensione>(); foreach (Recensione rec in recPrefe.RecensioniSalvate) if (rec.Id != recensione.Id) recSalvateNew.Add(rec); recPrefe.RecensioniSalvate = recSalvateNew; sessione.Update(recPrefe); sessione.Transaction.Commit(); sessione.Transaction.Dispose(); _gestisciUtente.RegisterOperazione("Rimozione recensione salvata", username); } catch (Exception e) { throw new FaultException<BookFault>(new BookFault(e.Message)); } }