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 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 int HaberEkle(Haber haber) { db.Haber.Add(haber); return db.SaveChanges(); }
public void HaberDuzenle(Haber haber) { db.Entry(haber).State = EntityState.Modified; db.SaveChanges(); }
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); }