示例#1
0
        //[LoginRule(hasEmptyStr = true, Front = true, isVisiter = false)]
        public ActionResult Edit(string actId)
        {
            if (Session["memId"] == null)
            {
                return(RedirectToAction("Index"));
            }
            else if (Session["memid"].ToString() == "")
            {
                return(RedirectToAction("Index"));
            }
            else
            {
                Join_Fun_Activities act = db.Join_Fun_Activities.Find(actId);
                if (act == null)
                {
                    return(HttpNotFound());
                }
                GetSelectList(actId);
                if (act.acceptDrop == true)
                {
                    ViewBag.Drop = "是";
                }
                else
                {
                    ViewBag.Drop = "否";
                }

                ViewBag.photo = db.Photos_of_Activities.Where(m => m.actId == actId).ToList();

                return(View(act));
            }
        }
        public ActionResult Create(Join_Fun_Activities act, FormCollection form)
        {
            string clsValue = form["Activity_Class"].ToString();
            short  age      = Int16.Parse(form["Age_Restriction"].ToString());
            short  people   = Int16.Parse(form["People_Restriction"].ToString());
            short  budget   = Int16.Parse(form["Budget_Restriction"].ToString());
            short  payment  = Int16.Parse(form["Payment_Restriction"].ToString());
            short  county   = Int16.Parse(form["County"].ToString());
            short  district = Int16.Parse(form["District"].ToString());
            bool   drop     = Convert.ToBoolean(form["Drop"].ToString());
            string actId    = db.Database.SqlQuery <string>("Select dbo.GetActId()").FirstOrDefault();

            act.actId        = actId;
            act.actClassId   = clsValue;
            act.ageRestrict  = age;
            act.maxNumPeople = people;
            act.maxBudget    = budget;
            act.paymentTerm  = payment;
            act.actCounty    = county;
            act.actDistrict  = district;
            act.acceptDrop   = drop;
            db.Join_Fun_Activities.Add(act);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
示例#3
0
        public ActionResult Create(Join_Fun_Activities act, HttpPostedFileBase[] picture)
        {
            using (var transaction = db.Database.BeginTransaction())
            {
                try
                {
                    //呼叫Sql系統函數GetActId()取得新增的活動ID
                    string actId = db.Database.SqlQuery <string>("Select dbo.GetActId()").FirstOrDefault();
                    act.actId       = actId;
                    act.actTime     = DateTime.Parse(Request["actTime"]);
                    act.actDeadline = DateTime.Parse(Request["actDeadline"]);
                    act.hostId      = Session["memid"].ToString();
                    act.keepAct     = true;
                    db.Join_Fun_Activities.Add(act);
                    db.SaveChanges();
                    string fileName = "";
                    //存入第一張主題照片(預設)
                    Photos_of_Activities front = new Photos_of_Activities();
                    if (picture[0] != null)
                    {
                        front.PhotoSerial = db.Database.SqlQuery <string>("Select dbo.GetPhotoId()").FirstOrDefault();
                        front.actId       = actId;
                        fileName          = front.PhotoSerial + actId + ".jpg";
                        picture[0].SaveAs(Server.MapPath("~/Photos/Activities/" + fileName));
                        front.actPics = "~/Photos/Activities/" + fileName;
                        db.Photos_of_Activities.Add(front);
                        db.SaveChanges();
                    }
                    else
                    {
                        front.PhotoSerial = db.Database.SqlQuery <string>("Select dbo.GetPhotoId()").FirstOrDefault();
                        front.actId       = actId;
                        switch (act.actClassId)
                        {
                        case "cls001":
                            front.actPics = "~/Photos/ClassIMG/活動.jpg";
                            break;

                        case "cls002":
                            front.actPics = "~/Photos/ClassIMG/休閒.jpg";
                            break;

                        case "cls003":
                            front.actPics = "~/Photos/ClassIMG/商務.jpg";
                            break;
                        }
                        db.Photos_of_Activities.Add(front);
                        db.SaveChanges();
                    }
                    //存入上傳的活動內容照片
                    if (picture[1] != null)
                    {
                        for (int i = 1; i < picture.Length; i++)
                        {
                            HttpPostedFileBase   file  = picture[i];
                            Photos_of_Activities photo = new Photos_of_Activities();
                            //if (file != null)
                            //{
                            photo.PhotoSerial = db.Database.SqlQuery <string>("Select dbo.GetPhotoId()").FirstOrDefault();
                            photo.actId       = actId;
                            fileName          = photo.PhotoSerial + actId + ".jpg";
                            // 將檔案儲存到網站的Photos資料夾下
                            file.SaveAs(Server.MapPath("~/Photos/Activities/" + fileName)); //存入Photos資料夾
                            photo.actPics = "~/Photos/Activities/" + fileName;
                            db.Photos_of_Activities.Add(photo);
                            db.SaveChanges();
                        }
                    }
                    transaction.Commit();
                }
                catch (DbUpdateException)
                {
                    transaction.Rollback();
                }
            }
            return(RedirectToAction("Index"));
        }