public ActionResult Ekle(Haber haber, HttpPostedFileBase VitrinResmi, IEnumerable <HttpPostedFileBase> DetayResim, string GelenEtiket) { KategoriListele(); int SessionControl = (int)HttpContext.Session["KullaniciID"]; Kullanici kullanici = _kullaniciRepository.GetByID(SessionControl); //if (ModelState.IsValid) ckeditör yüzünden validate kısmını geçemiyo. //{ haber.KullaniciID = kullanici.ID; haber.KisaAciklama = haber.KisaAciklama.Replace("ç", "ç").Replace("ý", "ı").Replace("Ç", "Ç").Replace("Ö", "Ö").Replace("Ü", "Ü").Replace("Ð", "Ğ").Replace("Þ", "Ş").Replace("Ý", "İ").Replace("ö", "ö").Replace("þ", "ş").Replace("ð", "ğ").Replace("ü", "ü").Replace("ý", "ı").Replace("&", "&"); haber.Aciklama = haber.Aciklama.Replace("ç", "ç").Replace("ý", "ı").Replace("Ç", "Ç").Replace("Ö", "Ö").Replace("Ü", "Ü").Replace("Ð", "Ğ").Replace("Þ", "Ş").Replace("Ý", "İ").Replace("ö", "ö").Replace("þ", "ş").Replace("ð", "ğ").Replace("ü", "ü").Replace("ý", "ı").Replace("&", "&"); if (VitrinResmi != null) { string dosyaAdi = Guid.NewGuid().ToString().Replace("-", ""); string uzanti = System.IO.Path.GetExtension(Request.Files[0].FileName); string tamyol = "/External/Haber/" + dosyaAdi + uzanti; Request.Files[0].SaveAs(Server.MapPath(tamyol)); haber.Resim = tamyol; } _haberRepository.Insert(haber); _haberRepository.Save(); _etiketRepository.EtiketEkle(haber.ID, GelenEtiket); string cokluResim = System.IO.Path.GetExtension(Request.Files[1].FileName); if (cokluResim != "") { foreach (var item in DetayResim) { if (item.ContentLength > 0) { string dosyaAdi = Guid.NewGuid().ToString().Replace("-", ""); string uzanti = System.IO.Path.GetExtension(Request.Files[0].FileName); string tamyol = "/External/Haber/" + dosyaAdi + uzanti; item.SaveAs(Server.MapPath(tamyol)); var resim = new Resim { ResimYolu = tamyol }; resim.HaberID = haber.ID; _resimRepository.Insert(resim); _resimRepository.Save(); } } } TempData["Bilgi"] = "Haber ekleme işlemi başarılı"; return(RedirectToAction("Index", "Haber")); //} //else //{ // TempData["Bilgi"] = "Eksik kısımları doldurunuz"; // return View(); //} }
public ActionResult Ekle(Haber haber, int KategoriID, HttpPostedFileBase VitrinResmi, IEnumerable <HttpPostedFileBase> DetayResim) { var SessionControl = HttpContext.Session["KullaniciId"]; if (ModelState.IsValid) //Haber classı içindeki şartlar uyuyorsa bunları uygula { Kullanici kullanici = _kullaniciRepository.GetById(Convert.ToInt32(SessionControl)); haber.KullaniciID = kullanici.ID; haber.KategoriID = KategoriID; if (VitrinResmi != null) { string DosyaAdi = Guid.NewGuid().ToString().Replace("-", ""); string Uzanti = System.IO.Path.GetExtension(Request.Files[0].FileName); string TamYol = "/External/Haber/" + DosyaAdi + Uzanti; Request.Files[0].SaveAs(Server.MapPath(TamYol)); haber.Resim = TamYol; } _haberRepository.Insert(haber); _haberRepository.Save(); string cokluResim = System.IO.Path.GetExtension(Request.Files[1].FileName); if (cokluResim != "") { foreach (var file in DetayResim) { if (file.ContentLength > 0) { string DosyaAdi = Guid.NewGuid().ToString().Replace("-", ""); string Uzanti = System.IO.Path.GetExtension(Request.Files[1].FileName); string TamYol = "/External/Haber/" + DosyaAdi + Uzanti; file.SaveAs(Server.MapPath(TamYol)); var resim = new Resim { ResimUrl = TamYol, }; resim.HaberID = haber.ID; _resimRepository.Insert(resim); _resimRepository.Save(); } } } TempData["Bilgi"] = "Haber Ekleme Başarılı"; return(RedirectToAction("Index", "Haber")); } return(View()); }
public ActionResult Ekle(Haber temp, HttpPostedFileBase vitrinResim, List <HttpPostedFileBase> detayResimler, string etiketler) { if (temp.Baslik == null || temp.Aciklama == null || temp.KategoriID == 0 || vitrinResim == null) { TempData["haberEklenmeOlayi"] = "Lütfen başlık,açıklama,kategori seçimi ve resim alanlarını boş geçmeyiniz.."; return(RedirectToAction("Ekle")); } Kullanici aktif = (Kullanici)HttpContext.Session["AktifKullanici"]; try { //HABER EKLEMEK temp.KullaniciID = aktif.Id; _haberRepository.Insert(temp); _haberRepository.Save(); //EKLENEN HABERIN ID SINI ALDIM //ACIKLAMAYLA ALDIM RISKLI !!!! var ekleneksonhaber = (Haber)_haberRepository.Get(x => x.Aciklama == temp.Aciklama); var sonhaberID = ekleneksonhaber.Id; //VITRIN RESIM ISLEMLERI Image orj = Image.FromStream(vitrinResim.InputStream); Bitmap bmOrta = new Bitmap(orj, boyutCeken.ortaBoyutCek); string resimAd = Guid.NewGuid() + Path.GetExtension(vitrinResim.FileName); string resimOrtaYol = $"/Images/HaberResimleri/OrtaBoyut/" + resimAd; //VITRIN RESIM EKLEMEK Resim eklenecekResim = new Resim { HaberID = sonhaberID, ResimYol = resimOrtaYol, VitrinMi = true }; _resimRepository.Insert(eklenecekResim); _resimRepository.Save(); bmOrta.Save(Server.MapPath(resimOrtaYol)); //TOPLU DETAY RESMI EKLEME OLAYI if (detayResimler[0] != null) { foreach (var detayResim in detayResimler) { Image detay = Image.FromStream(detayResim.InputStream); Bitmap bmDetayOrta = new Bitmap(detay, boyutCeken.ortaBoyutCek); string detayResimAd = Guid.NewGuid() + Path.GetExtension(detayResim.FileName); string detayOrtaYol = $"/Images/HaberResimleri/OrtaBoyut/" + detayResimAd; Resim diziResmi = new Resim { HaberID = sonhaberID, ResimYol = detayOrtaYol }; _resimRepository.Insert(diziResmi); _resimRepository.Save(); bmDetayOrta.Save(Server.MapPath(detayOrtaYol)); } } //ETİKET OLAYI if (etiketler != null) { _etiketRepository.EtiketEkle(etiketler, temp.Id); } TempData["haberEklenmeOlayi"] = "Haber başarıyla eklendi."; return(RedirectToAction("Ekle")); } catch { TempData["haberEklenmeOlayi"] = "Sorun oluştu lütfen tekrar deneyiniz.."; return(RedirectToAction("Ekle")); } }
[ValidateInput(false)] //İstemcide (KisaAciklama="<strong>asdasd</stro..."), zararlı olabilecek bir değer Request.Form algılandı. hatasını gidermek için public ActionResult Ekle(Haber haber, HttpPostedFileBase VitrinResmi, IEnumerable <HttpPostedFileBase> DetayResim, string Etiket) //VitrinResmi parametresiyle viewDeki inputtaki name aynı olmalı//enctype unutma! <form role="form" action="/Haber/Ekle" method="post" enctype="multipart/form-data"> { var SessionControl = HttpContext.Session["KullaniciEmail"]; string kEmail = SessionControl.ToString(); //if (ModelState.IsValid)//model doğru gelmişse //{ Kullanici kullanici = _kullaniciRepository.Get(x => x.Email == kEmail); haber.KullaniciID = kullanici.ID; if (VitrinResmi != null) { string DosyaAdi = Guid.NewGuid().ToString().Replace("-", ""); string uzanti = System.IO.Path.GetExtension(Request.Files[0].FileName); string TamYol = "/External/Haber/" + DosyaAdi + uzanti; Request.Files[0].SaveAs(Server.MapPath(TamYol)); //dosyayı belirlediğimiz yola kaydeder. haber.Resim = TamYol; //habere yolu kaydediyoruz. } _haberRepository.Insert(haber); _haberRepository.Save(); //Habere Etiketleri ekliyoruz //int[] Etiketler = { 10, 11 }; _etiketRepository.EtiketEkle(haber.ID, Etiket); _etiketRepository.Save(); //gidicek HaberEtikets tablosuna kayıt atıcak (Çoka çok ilişki) //Resim tablosuna resim detay resimlerini eklicez string cokluResims = System.IO.Path.GetExtension(Request.Files[1].FileName); if (cokluResims != "") { foreach (HttpPostedFileBase file in DetayResim) { if (file.ContentLength > 0) { string DosyaAdi = Guid.NewGuid().ToString().Replace("-", ""); string uzanti = System.IO.Path.GetExtension(Request.Files[1].FileName); string TamYol = "/External/Haber/" + DosyaAdi + uzanti; file.SaveAs(Server.MapPath(TamYol)); var resim = new Resim { ResimUrl = TamYol, }; resim.HaberID = haber.ID;//yukarıda eklediğimiz haberin idsini veriyoruz _resimRepository.Insert(resim); _resimRepository.Save(); } } TempData["Bilgi"] = "Haber Ekleme İşlemi Başarılı"; return(RedirectToAction("Index", "Haber")); } //} SetKategoriListele(); return(View()); }