public void Insert(HaberViewModel model) { MyContext db = new MyContext(); using (db.Database.BeginTransaction()) { try { var kategoriler = db.Kategoriler.Where(x => model.Kategoriler.Contains(x.Id)).ToList(); var yeniHaber = new Haber() { Baslik = model.Baslik, Icerik = model.Icerik, Keywords = model.Keywords }; db.Haberler.Add(yeniHaber); db.SaveChanges(); yeniHaber.Kategoriler.AddRange(kategoriler); db.SaveChanges(); db.Database.CurrentTransaction.Commit(); } catch (Exception ex) { db.Database.CurrentTransaction.Rollback(); } } }
public void Update(HaberViewModel model) { MyContext db = new MyContext(); using (db.Database.BeginTransaction()) { try { var haber = db.Haberler.Find(model.Id); if (haber == null) { throw new DbEntityValidationException("Güncellenecek haber bulunamadı"); } var kategoriler = db.Kategoriler.Where(x => model.Kategoriler.Contains(x.Id)).ToList(); haber.Baslik = model.Baslik; haber.Icerik = model.Icerik; haber.Keywords = model.Keywords; haber.YayindaMi = model.YayindaMi; db.SaveChanges(); haber.Kategoriler.Clear(); haber.Kategoriler = kategoriler; db.SaveChanges(); db.Database.CurrentTransaction.Commit(); } catch (DbEntityValidationException ex) { db.Database.CurrentTransaction.Rollback(); throw ex; } } }
public ActionResult HaberEkle() { // dropdownlist elemanlarını ilkleme var model = new HaberViewModel { Kategoriler = kategoriServis.Kategoriler(), Kullanicilar = kullaniciServis.Kullanicilar(), HaberTipleri = haberServis.HaberTipleri(), Etiketler = etiketServis.Etiketler(), HaberPozisyon = haberServis.HaberPozisyonlari() }; return(View(model)); }
public ActionResult HaberDuzenle(int id) { var haber = haberServis.HaberBul(id); HaberViewModel model = ModelToViewModel.HaberToHaberViewModel(haber); // dropdownlistleri ilkleme model.Kategoriler = kategoriServis.Kategoriler(); model.Kullanicilar = kullaniciServis.Kullanicilar(); model.HaberTipleri = haberServis.HaberTipleri(); model.Etiketler = etiketServis.Etiketler(); model.HaberPozisyon = haberServis.HaberPozisyonlari(); return(View(model)); }
public ActionResult Ekle(HaberViewModel model) { if (!ModelState.IsValid) { ModelState.AddModelError("", "Haber eklerken bir hata meydana geldi"); return(View(model)); } try { new HaberRepo().Insert(model); return(RedirectToAction("Index")); } catch (Exception ex) { return(View(model)); } }
public ActionResult Ekle(HaberViewModel model) { ViewBag.Kategoriler = DropDownListDoldurucu.KategoriList(); if (!ModelState.IsValid) { ModelState.AddModelError("", "Haber eklerken bir hata meydana geldi"); return(View(model)); } try { new HaberRepo().Insert(model); return(RedirectToAction("Index")); } catch (DbEntityValidationException ex) { return(View(model)); } }
public static HaberViewModel HaberToHaberViewModel(Haber haber) { HaberViewModel model = new HaberViewModel(); model.Aciklama = haber.Aciklama; model.Baslik = haber.Baslik; model.HaberTipId = haber.HaberTipId; model.Icerik = haber.Icerik; model.Id = haber.Id; model.KategoriId = haber.KategoriId; model.Kaynak = haber.Kaynak; model.KullaniciId = haber.KullaniciId; model.SecilenEtiketler = haber.Etiketler.Select(x => x.Id).ToArray(); model.Yayinda = haber.Yayinda; model.KucukResim = haber.KucukProfilResim; model.HaberPozisyonId = haber.HaberPozisyonId; return(model); }
public ActionResult Duzenle(HaberViewModel model) { ViewBag.Kategoriler = DropDownListDoldurucu.KategoriList(); if (!ModelState.IsValid) { ModelState.AddModelError("", "Haber düzenlenirken bir hata oluştu"); return(View(model)); } try { new HaberRepo().Update(model); return(RedirectToAction("Index")); } catch (Exception e) { ModelState.AddModelError("", e.Message); return(View(model)); } }
public static Haber HaberViewModelToHaber(HaberViewModel model, Haber haber) { int kullaniciId = model.KullaniciId; haber.Id = model.Id; haber.Aciklama = model.Aciklama; haber.Baslik = model.Baslik; haber.HaberTipId = model.HaberTipId; haber.Icerik = model.Icerik; haber.KategoriId = model.KategoriId; haber.Kaynak = model.Kaynak; haber.Yayinda = model.Yayinda; haber.DegistirmeKullanici = kullaniciId; haber.YayinlamaKullanici = kullaniciId; haber.KullaniciId = kullaniciId; haber.HaberPozisyonId = model.HaberPozisyonId; return(haber); }
public ActionResult Duzenle(int?id) { if (id == null) { return(RedirectToAction("Index")); } var haber = new HaberRepo().GetByID(id.Value); if (haber == null) { return(RedirectToAction("Index")); } var kategoriList = DropDownListDoldurucu.KategoriList(); foreach (var item in kategoriList) { if (haber.Kategoriler.Select(x => x.Id).Contains(int.Parse(item.Value))) { item.Selected = true; } } ViewBag.Kategoriler = kategoriList.OrderByDescending(x => x.Selected); //ViewBag.Kategoriler = DropDownListDoldurucu.KategoriList(); //ViewData["Kategoriler"]; üstekiyle aynı var model = new HaberViewModel() { Icerik = haber.Icerik, Id = haber.Id, Kategoriler = haber.Kategoriler.Select(x => x.Id).ToList(), Baslik = haber.Baslik, Keywords = haber.Keywords, YayindaMi = haber.YayindaMi, EklenmeZamani = haber.EklenmeZamani }; return(View(model)); }
public ActionResult HaberEkle(HaberViewModel model) { try { Haber haber = new Haber(); haber = ViewModelToModel.HaberViewModelToHaber(model, haber); var dosya = model.Resim; var etiketler = etiketServis.Etiketler(model.SecilenEtiketler); if (dosya != null && dosya.ContentLength > 0) { // resmin ismini değiştir. var fileName = Guid.NewGuid().ToString() + System.IO.Path.GetExtension(dosya.FileName); // dosya dizinlerinin yollarını oluştur. var orijinalResimDizin = Server.MapPath("~/Images/uploads/Haber"); var buyukResimDizin = Server.MapPath("~/Images/uploads/Haber/Buyuk"); var kucukResimDizin = Server.MapPath("~/Images/uploads/Haber/Kucuk"); // dizin yoksa oluştur. if (!Directory.Exists(orijinalResimDizin)) { Directory.CreateDirectory(orijinalResimDizin); Directory.CreateDirectory(buyukResimDizin); Directory.CreateDirectory(kucukResimDizin); } // dosyayı kaydet dosya.SaveAs(Path.Combine(orijinalResimDizin, fileName)); // resimleri farklı boyutlarda kaydet. ImageManager.SaveResizedImage(Image.FromFile(Path.Combine(orijinalResimDizin, fileName)), new Size(600, 600), buyukResimDizin, fileName); ImageManager.SaveResizedImage(Image.FromFile(Path.Combine(orijinalResimDizin, fileName)), new Size(200, 200), kucukResimDizin, fileName); haber.OrjinalProfilResim = Path.Combine("Images/uploads/Haber/", fileName); haber.BuyukProfilResim = Path.Combine("Images/uploads/Haber/Buyuk/", fileName); haber.KucukProfilResim = Path.Combine("Images/uploads/Haber/Kucuk/", fileName); } haber.DegistirmeTarihi = DateTime.Now; haber.OkunmaSayisi = 0; haber.OlusturmaTarihi = DateTime.Now; haber.YayinlanmaTarihi = DateTime.Now; haber.YorumSayisi = 0; haber.TumEtiketler = string.Join(", ", etiketler.Select(x => x.Ad)); etiketler.ForEach(x => haber.Etiketler.Add(x)); haberServis.HaberEkle(haber); return(RedirectToAction("Haberler")); } catch (Exception ex) { // haber kaydı başarısızsa // dropdownlist elemanlarını // tekrar ilkleme model = new HaberViewModel { Kategoriler = kategoriServis.Kategoriler(), Kullanicilar = kullaniciServis.Kullanicilar(), HaberTipleri = haberServis.HaberTipleri(), Etiketler = etiketServis.Etiketler(), HaberPozisyon = haberServis.HaberPozisyonlari() }; } return(View(model)); }