예제 #1
0
 //   EndUsers eu = new EndUsers()
 //   {
 //     //  EndUsersID = endusers.EndUsersID
 //   };
 //   db.EndUsers.Add(eu);
 //   db.SaveChanges();
 ////   return RedirectToAction("Products", new { id = endusers.EndUsersID});
 //public ActionResult Products()
 //{
 //    //var p = endusers.Products.SingleOrDefault(c => c.ProductID == ProductID);
 //    //var e = p.EndUsers.SingleOrDefault(i => i.EndUsersID == EndUsersID);
 //    //if (e == null)
 //    //    p.EndUsers.Add(endusers.EndUsers.Single(i => i.EndUsersID == EndUsersID));
 //    return RedirectToAction("Products", "Products");
 //    return View(db.Products.ToList());
 //}
 //public ActionResult Products(EndUsers endusers, int id)
 //    {
 //        EndUsersID = id
 //    };
 //    db.EndUsers.Add(e);
 //    db.SaveChanges();
 //    return RedirectToAction("", new { id = endusers.EndUsersID });
 //    return View(endusers);
 //    //var products = db.Products.Include(p => p.ProductOwners);
 //  return View(db.Products.ToList());
 //}
 // GET: EndUsers/Create
 public ActionResult Create()
 {
     var endUser = new EndUsers();
     endUser.Products= new List<Product>();
     PopulateFollowedProducts(endUser);
     return View();
 }
예제 #2
0
 private void PopulateFollowedProducts(EndUsers endUsers)
 {
     var allProducts = db.Products;
     var followers = new HashSet<int>(endUsers.Products.Select(c => c.ProductID));
     var viewModel = new List<FollowedProducts>();
     foreach (var product in allProducts)
     {
         viewModel.Add(new FollowedProducts
         {
             ProductID = product.ProductID,
             Followed = followers.Contains(product.ProductID)
         });
     }
     ViewBag.Products = viewModel;
 }
예제 #3
0
        private void UpdateFollowers(string[] followedProducts, EndUsers endUserToUpdate)
        {
            if (followedProducts == null)
            {
                endUserToUpdate.Products = new List<Product>();
                return;
            }

            var followedProductsHS = new HashSet<string>(followedProducts);
            var followers = new HashSet<int>
                (endUserToUpdate.Products.Select(c => c.ProductID));
            foreach (var product in db.Products)
            {
                if (followedProductsHS.Contains(product.ProductID.ToString()))
                {
                    if (!followers.Contains(product.ProductID))
                    {
                        endUserToUpdate.Products.Add(product);
                    }
                }
                else
                {
                    if (followers.Contains(product.ProductID))
                    {
                        endUserToUpdate.Products.Remove(product);
                    }
                }
            }
        }
예제 #4
0
        public ActionResult Products(ApplicationDbContext context,EndUsers endUsers, int? id)
        {
            var currentUser = User.Identity.Name;
               var LoggedInUser = db.Users.Where(u => u.Email == currentUser);
            //product.ProductOwnersID = LoggedInUser.ProductOwnersID;

               // var p = context.Products.SingleOrDefault(c => c.ProductID == id);

               //var e = p.EndUsers.SingleOrDefault(i => i.Email == currentUser);

               //if (e == null)

               PopulateFollowedProducts(endUsers);

               //  p.EndUsers.Add(context.EndUsers.Single(i => i.EndUsersID == endUsers));
             //   var e = p.EndUsers.SingleOrDefault(i => i.Email == (e)IQueryable<ApplicationUser>LoggedInUser);

              //  var endusersproducts = e.Products;

            //    var e = p.EndUsers.SingleOrDefault(i => i.EndUsersID == EndUsersID);
               //     if (e == null)
            //        p.EndUsers.Add(context.EndUsers.Single(i => i.Name == EndUsersName));

               //if (userAction == "+ Follow")
               //{
               //    ViewBag.SubmitValue = "+ Follow";
               // }

               //if (userAction == "+ Unfollow")
               // {
               //     ViewBag.SubmitValue = "+ Unfollow";
               // }

            if (ModelState.IsValid)
            {
                EndUsers eu = new EndUsers()
                {
                    EndUsersID = endUsers.EndUsersID

                };

                db.EndUsers.Add(eu);
              //  db.SaveChanges();
             //   return RedirectToAction("Index");
            }

            return View(endUsers);
        }