예제 #1
0
        public static void SaveFilmItemMember(MovieContext _ctx, FilmItem filmItem, Person person, int partType, string character)
        {
            FilmItemCredits fic = new FilmItemCredits
            {
                FilmItem  = filmItem,
                Person    = person,
                Character = character,
                PartType  = (PartType)partType
            };

            _ctx.FilmItemCredits.Add(fic);
            _ctx.SaveChanges();
        }
예제 #2
0
        public static void EditFilmItemCredit(MovieContext _ctx, FilmItemCredits filmItemCredit, int partType, string character)
        {
            character = (partType == 1 && !string.IsNullOrWhiteSpace(character) ? character : null);
            var personAlreadyCreditedInDepartment = _ctx.FilmItemCredits.Where(p => p.Person == filmItemCredit.Person)
                                                    .Where(f => f.FilmItem == filmItemCredit.FilmItem)
                                                    .Where(fic => fic.PartType == (PartType)partType)
                                                    .Where(fp => fp.Id != filmItemCredit.Id)
                                                    .FirstOrDefault();

            _ctx.FilmItemCredits.Attach(filmItemCredit);

            if (personAlreadyCreditedInDepartment == null)
            {
                filmItemCredit.Character = character;
                filmItemCredit.PartType  = (PartType)partType;
                filmItemCredit.UpdatedAt = DateTime.Now;
            }

            _ctx.SaveChanges();
        }