• 1398/02/15

ارور Server Error in '/' Application. :

سلام استاد

من درج محصولم کار میکرد بعد از اینکه ویرایش محصول رو کدهارو نوشتم هم درج محصول و هم ویرایش محصول به ارور برخورد کردم و کلی هم چک کردم ولی چیزی متوجه نشدم ممنون میشم راهنماییم کنید.

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Entity;
using System.IO;
using System.Linq;
using System.Net;
using System.Web;
using System.Web.Mvc;
using DataLayer;
using InsertShowImage;
using KooyWebApp_MVC.Classes;

namespace Booklish.Areas.Admin.Controllers
{
    public class ProductsController : Controller
    {
        private MyEShopEntities db = new MyEShopEntities();

        // GET: Admin/Products
        public ActionResult Index()
        {
            return View(db.Products.ToList());
        }

        // GET: Admin/Products/Details/5
        public ActionResult Details(int? id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            Products products = db.Products.Find(id);
            if (products == null)
            {
                return HttpNotFound();
            }
            return View(products);
        }

        // GET: Admin/Products/Create
        public ActionResult Create()
        {
            ViewBag.Groups = db.Product_Groups.ToList();
            return View();
        }

        // POST: Admin/Products/Create
        // To protect from overposting attacks, please enable the specific properties you want to bind to, for 
        // more details see https://go.microsoft.com/fwlink/?LinkId=317598.
        [HttpPost]
        [ValidateAntiForgeryToken]
        public ActionResult Create([Bind(Include = "ProductID,ProductTitle,ShortDesciption,Text,Price,ImageName,CreateDate")] Products products, List<int> selectedGroups,HttpPostedFileBase imageProduct, string tags)
        {
            if (ModelState.IsValid)
            {
                if (selectedGroups==null)
                {
                    ViewBag.ErrorselectedGroup = true;
                    ViewBag.Groups = db.Product_Groups.ToList();
                    return View(products);
                }
                products.ImageName = "Default.jpg";
                if (imageProduct != null && imageProduct.IsImage())
                {
                    products.ImageName = Guid.NewGuid().ToString() + Path.GetExtension(imageProduct.FileName);
                    imageProduct.SaveAs(Server.MapPath("/Images/ProductImages/"+products.ImageName));
                    ImageResizer img=new ImageResizer();
                    img.Resize(Server.MapPath("/Images/ProductImages/" + products.ImageName),
                        Server.MapPath("/Images/ProductImages/Thumb/" + products.ImageName));
                }
                products.CreateDate = DateTime.Now;
                db.Products.Add(products);
                foreach (int selectedGroup in selectedGroups)
                {
                    db.Products_Selected_Groups.Add(new Products_Selected_Groups()
                    {
                        ProductID = products.ProductID,
                        GroupID = selectedGroup
                    });
                    }

                if (!string.IsNullOrEmpty(tags))
                {
                    string[] tag = tags.Split(',');
                    foreach (string t in tag)
                    {
                        db.Product_Tags.Add(new Product_Tags()
                        {
                            ProductID = products.ProductID,
                            Tag = t.Trim()
                        });
                    }
                }
                db.SaveChanges();
                return RedirectToAction("Index");

            }
            ViewBag.Groups = db.Product_Groups.ToList();
            return View(products);
        }

        // GET: Admin/Products/Edit/5
        public ActionResult Edit(int? id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            Products products = db.Products.Find(id);
            if (products == null)
            {
                return HttpNotFound();
            }

            ViewBag.SelectedGroups = products.Products_Selected_Groups.ToList();
            ViewBag.Groups = db.Product_Groups.ToList();
            ViewBag.Tags = string.Join(",", products.Product_Tags.Select(T => T.Tag).ToList());
            return View(products);
        }

        // POST: Admin/Products/Edit/5
        // To protect from overposting attacks, please enable the specific properties you want to bind to, for 
        // more details see https://go.microsoft.com/fwlink/?LinkId=317598.
        [HttpPost]
        [ValidateAntiForgeryToken]
        public ActionResult Edit([Bind(Include = "ProductID,ProductTitle,ShortDesciption,Text,Price,ImageName,CreateDate")] Products products, List<int> selectedGroups, HttpPostedFileBase imageProduct, string tags)
        {
            if (ModelState.IsValid)
            {
                if (imageProduct != null && imageProduct.IsImage())
                {
                    if (products.ImageName!= "Default.jpg")
                    {
                        System.IO.File.Delete(Server.MapPath("/Images/ProductImages/"+products.ImageName));
                        System.IO.File.Delete(Server.MapPath("/Images/ProductImages/Thoumb/"+products.ImageName));

                    }
                    products.ImageName = Guid.NewGuid().ToString() + Path.GetExtension(imageProduct.FileName);
                    imageProduct.SaveAs(Server.MapPath("/Images/ProductImages/" + products.ImageName));
                    ImageResizer img = new ImageResizer();
                    img.Resize(Server.MapPath("/Images/ProductImages/" + products.ImageName),
                        Server.MapPath("/Images/ProductImages/Thumb/" + products.ImageName));
                }
               
                db.Entry(products).State = EntityState.Modified;
                db.Product_Tags.Where(t=>t.ProductID==products.ProductID).ToList().ForEach(t=> db.Product_Tags.Remove(t));
                if (!string.IsNullOrEmpty(tags))
                {
                    string[] tag = tags.Split(',');
                    foreach (string t in tag)
                    {
                        db.Product_Tags.Add(new Product_Tags()
                        {
                            ProductID = products.ProductID,
                            Tag = t.Trim()
                        });
                    }
                }
                db.Products_Selected_Groups.Where(g=>g.ProductID==products.ProductID).ToList().ForEach(g=>db.Products_Selected_Groups.Remove(g));
                foreach (int selectedGroup in selectedGroups)
                {
                    db.Products_Selected_Groups.Add(new Products_Selected_Groups()
                    {
                        ProductID = products.ProductID,
                        GroupID = selectedGroup
                    });
                }
                db.SaveChanges();
                return RedirectToAction("Index");
            }
            ViewBag.SelectedGroups =selectedGroups;
            ViewBag.Groups = db.Product_Groups.ToList();
            ViewBag.Tags = tags;
            return View(products);
        }

        // GET: Admin/Products/Delete/5
        public ActionResult Delete(int? id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            Products products = db.Products.Find(id);
            if (products == null)
            {
                return HttpNotFound();
            }
            return View(products);
        }

        // POST: Admin/Products/Delete/5
        [HttpPost, ActionName("Delete")]
        [ValidateAntiForgeryToken]
        public ActionResult DeleteConfirmed(int id)
        {
            Products products = db.Products.Find(id);
            db.Products.Remove(products);
            db.SaveChanges();
            return RedirectToAction("Index");
        }

        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                db.Dispose();
            }
            base.Dispose(disposing);
        }
    }
}

کد کنترلر رو هم چک کردم

  • 1398/02/15
  • ساعت 23:07

سلام 

این مشکل چندین دلیل میتونه داشته باشه 

متن خطا را سرچ کنید


  • 1398/02/16
  • ساعت 09:05

متن خطا رو هم سرچ کردم چیز خاصی پیدا نکردم

 


  • 1398/02/16
  • ساعت 11:53

کد ها هم به نظر درست میان 

باید دیباگ کنید 


  • 1398/02/17
  • ساعت 12:03

استاد یه هفته اس این ارور منو درگیر کرده اگه امکانش هست انی دسک بدم کمکم کنید ممنون

 


  • 1398/02/17
  • ساعت 13:41

خیر متاسفانه امکان ریموت ندارم

ولی اگر خواستید میتونید کلاس رفع اشکال بگیرید 

در تلگرام به شماره 09197070750 پیام بدید تا براتون رزرو کنند 


  • 1398/02/17
  • ساعت 17:20

درست کردم.

 


logo-enamadlogo-samandehi