コード例 #1
0
        public IActionResult AddPicturePeople(AddPicturePeopleViewModel addPicturePeopleViewModel)
        {
            if (ModelState.IsValid)
            {
                string _stackID = addPicturePeopleViewModel.StackID;

                List <int> pictureIDs = addPicturePeopleViewModel.PictureIDs;

                List <string> peopleIDList = new List <string>();
                foreach (var c in addPicturePeopleViewModel.PeopleIDs)
                {
                    var id = c.ToString();
                    peopleIDList.Add(id);
                }
                ;

                string peopleIDs = string.Join(", ", peopleIDList);

                foreach (var pictureID in pictureIDs)
                {
                    var picture = new Picture {
                        ID = pictureID
                    };
                    picture.People = peopleIDs;
                    context.Entry(picture).Property("People").IsModified = true;
                }
                ;

                context.SaveChanges();

                return(Redirect(string.Format("/Picture/AddPIcturePeople?StackID={0}", _stackID)));
            }

            return(View(addPicturePeopleViewModel));
        }
コード例 #2
0
        public IActionResult AddPicturePeople(string stackID, string sortOrder)
        {
            ViewBag.Sorting = sortOrder;

            var selectAllPicturesWithoutPeople = provider.SelectAllPicturesWhithoutPeople();

            var slectAllPictureWithoutPeopleNotYetClassified = selectAllPicturesWithoutPeople
                                                               .Where(p => p.PictureStackIsClassified == false)
                                                               .AsQueryable();

            if (stackID != null)
            {
                var selectAllPictureOfAStackWithoutPeople = Sorting(sortOrder, slectAllPictureWithoutPeopleNotYetClassified)
                                                            .Where(p => p.PictureStackID == int.Parse(stackID))
                                                            .AsQueryable();

                string _stackID = stackID;

                var peopleNameList = provider.SelectAllPictures().Select(p => p.PicturePeopleIDs).ToList();

                var pictureIDs = selectAllPictureOfAStackWithoutPeople.Select(p => p.PictureID).ToList();

                var peopleList = context.PeopleDb.ToList();

                List <int> peopleIDs = new List <int>();

                AddPicturePeopleViewModel addPicturePeopleViewModel =
                    new AddPicturePeopleViewModel
                    (
                        selectAllPictureOfAStackWithoutPeople.ToList(),
                        peopleNameList,
                        pictureIDs,
                        _stackID,
                        peopleList,
                        peopleIDs
                    );

                return(View(addPicturePeopleViewModel));
            }

            else
            {
                var selectAllPictureOfAStackWithoutAuthor = Sorting(sortOrder, slectAllPictureWithoutPeopleNotYetClassified)
                                                            .AsQueryable();

                string _stackID = stackID;

                var peopleNameList = provider.SelectAllPictures().Select(p => p.PicturePeopleIDs).ToList();

                var pictureIDs = slectAllPictureWithoutPeopleNotYetClassified.Select(p => p.PictureID).ToList();

                var peopleList = context.PeopleDb.ToList();

                List <int> peopleIDs = new List <int>();

                AddPicturePeopleViewModel addPicturePeopleViewModel =
                    new AddPicturePeopleViewModel
                    (
                        slectAllPictureWithoutPeopleNotYetClassified.ToList(),
                        peopleNameList,
                        pictureIDs,
                        _stackID,
                        peopleList,
                        peopleIDs
                    );

                return(View(addPicturePeopleViewModel));
            }
        }