public void AddMovie2Tag(Fish.MovieManager.Movie2Tag.Storage.Movie2Tag tag) { using (var session = Fish.MovieManager.Movie2Tag.Storage.StorageManager.Instance.OpenSession()) { session.BeginTransaction(); var tmp = session.Query <Fish.MovieManager.Movie2Tag.Storage.Movie2Tag>().Where(o => o.id == tag.id && o.tag == tag.tag).SingleOrDefault(); if (tmp == null) { try { session.Save(tag); session.Transaction.Commit(); } catch (Exception ex) { session.Transaction.Rollback(); throw new Exception("wrong storage.", ex); } } } }
/// <summary> /// 导入豆瓣信息列表 /// </summary> /// <param name="doubanMovies">DoubanMovieInfo类型的List</param> public void ImportDoubanInfo(List <Fish.MovieManager.DoubanMovieInfo.Storage.DoubanMovieInfo> doubanMovies) { foreach (var item in doubanMovies) { Fish.MovieManager.DoubanControl.Class1.Instance.AddDoubanMovieInfo(item); foreach (var t in item.genres) { var tmp = new Fish.MovieManager.Movie2Tag.Storage.Movie2Tag(); tmp.id = item.doubanId; tmp.tag = t; Fish.MovieManager.TagControl.Class1.Instance.AddMovie2Tag(tmp); } foreach (var t in item.casts) { var tmp = new Fish.MovieManager.Movie2Actor.Storage.Movie2Actor(); tmp.id = item.doubanId; tmp.doubanId = t; Fish.MovieManager.ActorControl.Class1.Instance.AddActor(tmp); Fish.MovieManager.ActorControl.Class1.Instance.AddActorInfo(t); } Fish.MovieManager.ActorControl.Class1.Instance.AddActorInfo(item.directors); } }