public void Save(AniDB_Anime_Title obj) { using (var session = JMMService.SessionFactory.OpenSession()) { // populate the database using (var transaction = session.BeginTransaction()) { session.SaveOrUpdate(obj); transaction.Commit(); } } }
private void CreateTitles(ISession session, List<Raw_AniDB_Anime_Title> titles) { if (titles == null) return; this.AllTitles = ""; List<AniDB_Anime_Title> titlesToDelete = new List<AniDB_Anime_Title>(); List<AniDB_Anime_Title> titlesToSave = new List<AniDB_Anime_Title>(); var titlesTemp = session .CreateCriteria(typeof(AniDB_Anime_Title)) .Add(Restrictions.Eq("AnimeID", this.AnimeID)) .List<AniDB_Anime_Title>(); titlesToDelete = new List<AniDB_Anime_Title>(titlesTemp); foreach (Raw_AniDB_Anime_Title rawtitle in titles) { AniDB_Anime_Title title = new AniDB_Anime_Title(); title.Populate(rawtitle); titlesToSave.Add(title); if (this.AllTitles.Length > 0) this.AllTitles += "|"; this.AllTitles += rawtitle.Title; } using (var transaction = session.BeginTransaction()) { foreach (AniDB_Anime_Title tit in titlesToDelete) session.Delete(tit); foreach (AniDB_Anime_Title tit in titlesToSave) session.SaveOrUpdate(tit); transaction.Commit(); } }
private void CreateTitles(List<Raw_AniDB_Anime_Title> titles) { if (titles == null) return; this.AllTitles = ""; List<AniDB_Anime_Title> titlesToDelete = RepoFactory.AniDB_Anime_Title.GetByAnimeID(AnimeID); List<AniDB_Anime_Title> titlesToSave = new List<AniDB_Anime_Title>(); foreach (Raw_AniDB_Anime_Title rawtitle in titles) { AniDB_Anime_Title title = new AniDB_Anime_Title(); title.Populate(rawtitle); titlesToSave.Add(title); if (this.AllTitles.Length > 0) this.AllTitles += "|"; this.AllTitles += rawtitle.Title; } RepoFactory.AniDB_Anime_Title.Delete(titlesToDelete); RepoFactory.AniDB_Anime_Title.Save(titlesToSave); }