コード例 #1
0
 public ActionResult Login(User user)
 {
     if (ModelState.IsValid)
     {
         QL_Hang db     = new QL_Hang();
         var     dao    = new UserDAO();
         var     result = dao.Login(user.Username, MD5Hash(user.Password));
         if (result == 1)
         {
             //add session
             //var name = dao.GetByName(user.Username);
             var userSession = new User();
             userSession.Username = user.Username;
             userSession.UserID   = user.UserID;
             Session.Add(UserLogin.USER_SESSION, userSession);
             Session["USER_SESSION"] = userSession.Username;
             return(RedirectToAction("Index", "AdminPage"));
         }
         else if (result == 0)
         {
             ModelState.AddModelError("", "Tài khoản không tồn tại");
         }
         else if (result == -1)
         {
             ModelState.AddModelError("", "Tài khoản đang bị khóa");
         }
         else
         {
             ModelState.AddModelError("", "Đăng nhập thất bại");
         }
     }
     return(View());
 }
コード例 #2
0
        public ActionResult Products(int?page)
        {
            QL_Hang db = new QL_Hang();

            // 1. Tham số int? dùng để thể hiện null và kiểu int
            // page có thể có giá trị là null và kiểu int.

            // 2. Nếu page = null thì đặt lại là 1.
            if (page == null)
            {
                page = 1;
            }

            // 3. Tạo truy vấn, lưu ý phải sắp xếp theo trường nào đó, ví dụ OrderBy
            // theo LinkID mới có thể phân trang.
            var links = (from l in db.Products
                         select l).OrderBy(x => x.productID);

            // 4. Tạo kích thước trang (pageSize) hay là số Link hiển thị trên 1 trang
            int pageSize = 3;

            // 4.1 Toán tử ?? trong C# mô tả nếu page khác null thì lấy giá trị page, còn
            // nếu page = null thì lấy giá trị 1 cho biến pageNumber.
            int pageNumber = (page ?? 1);

            // 5. Trả về các Link được phân trang theo kích thước và số trang.
            return(View(links.ToPagedList(pageNumber, pageSize)));
        }
コード例 #3
0
        public ActionResult ViewOrderDetail(int id)
        {
            QL_Hang db     = new QL_Hang();
            var     result = from o in db.Orders
                             join c in db.Carts on o.cartID equals c.cartID
                             join p in db.Products on c.productID equals p.productID
                             where c.cartID == id
                             select new orderViewProduct {
                order = o, cart = c, product = p
            };

            return(PartialView("_ViewOrderDetail", result));
        }
コード例 #4
0
        public List <Product> SelectAllNewProduct()
        {
            int            numberOfrecords = 9; // read from user
            QL_Hang        db       = new QL_Hang();
            List <Product> products = db.Products.ToList();
            List <Image>   images   = db.Images.ToList();
            var            list     = (from t in products
                                       where t.Status == true
                                       orderby t.productID
                                       select t).Take(numberOfrecords);

            return(list.ToList());
        }
コード例 #5
0
        public ActionResult ProductDetail(int id)
        {
            QL_Hang        db       = new QL_Hang();
            List <Product> products = db.Products.ToList();
            //List<Image> images = db.Images.ToList();

            var result = from p in products
                         where p.productID == id
                         select new productViewModel {
                product = p
            };

            return(View(result));
        }
コード例 #6
0
        public ActionResult GetType(int id)
        {
            QL_Hang         db         = new QL_Hang();
            List <Product>  products   = db.Products.ToList();
            List <Category> categories = db.Categories.ToList();

            var result = from p in products
                         join t in categories on p.TypeID equals t.TypeID
                         where p.TypeID == id
                         select new productType {
                product = p, category = t
            };

            return(View(result));
        }
コード例 #7
0
        public ActionResult GetAllOrder()
        {
            QL_Hang        db       = new QL_Hang();
            List <Order>   orders   = db.Orders.ToList();
            List <Cart>    carts    = db.Carts.ToList();
            List <Product> products = db.Products.ToList();

            var result = from o in orders
                         join c in carts on o.cartID equals c.cartID
                         join p in products on c.productID equals p.productID
                         select new orderViewProduct {
                order = o, cart = c, product = p
            };

            return(PartialView("_GetAllOrder", result));
        }
コード例 #8
0
        public ActionResult ProductDetail(int id)
        {
            QL_Hang        db       = new QL_Hang();
            List <Product> products = db.Products.ToList();
            List <Image>   images   = db.Images.ToList();


            ViewBag.productId = id;
            var result = from p in products
                         join i in images on p.productID equals i.productID
                         where p.productID == id
                         select new productViewModel {
                product = p, image = i
            };

            return(View(result));
        }
コード例 #9
0
        public ActionResult UpdateProduct([Bind(Include = "productID, productName, productPrice, productSale, productInfor, productIntroduce, TypeID, Status")] Product product, HttpPostedFileBase image)
        {
            QL_Hang db = new QL_Hang();

            if (image != null && image.ContentLength > 0)
            {
                product.productImage = image.ContentLength.ToString();
                byte[] data     = Encoding.Unicode.GetBytes(product.productImage);
                string fileName = System.IO.Path.GetFileName(image.FileName);
                string urlImage = Server.MapPath("~/Content/Images/" + fileName);
                image.SaveAs(urlImage);
                product.productImage = fileName;
            }

            if (ModelState.IsValid)
            {
                ProductDAO productDAO = new ProductDAO();
                productDAO.Update(product);
                return(RedirectToAction("Index"));
            }
            return(View(product));
        }
コード例 #10
0
        public ActionResult Register(User user)
        {
            QL_Hang db = new QL_Hang();

            if (ModelState.IsValid)
            {
                var check = db.Users.FirstOrDefault(s => s.Email == user.Email);
                if (check == null)
                {
                    user.Password = MD5Hash(user.Password);
                    db.Configuration.ValidateOnSaveEnabled = false;
                    db.Users.Add(user);
                    db.SaveChanges();
                    return(RedirectToAction("Index", "AdminPage"));
                }
                else
                {
                    ViewBag.error = "Email already exists";
                    return(View());
                }
            }
            return(View());
        }
コード例 #11
0
 public ImageDAO()
 {
     db = new QL_Hang();
 }
コード例 #12
0
 public UserDAO()
 {
     db = new QL_Hang();
 }
コード例 #13
0
ファイル: CartDAO.cs プロジェクト: vuduy212/ThucTapWeb
 public CartDAO()
 {
     db = new QL_Hang();
 }
コード例 #14
0
 public CategoryDAO()
 {
     db = new QL_Hang();
 }
コード例 #15
0
ファイル: OrderDAO.cs プロジェクト: vuduy212/ThucTapWeb
 public OrderDAO()
 {
     db = new QL_Hang();
 }
コード例 #16
0
 public TestimonialsDAO()
 {
     db = new QL_Hang();
 }
コード例 #17
0
 public ProductDAO()
 {
     db = new QL_Hang();
 }
コード例 #18
0
ファイル: BlogDAO.cs プロジェクト: Quangnam228/Project
 public BlogDAO()
 {
     db = new QL_Hang();
 }
コード例 #19
0
ファイル: LoaiSanPhamDAO.cs プロジェクト: vuduy212/ThucTapWeb
 public LoaiSanPhamDAO()
 {
     db = new QL_Hang();
 }