public ActionResult YorumYaz(Yorum yorum)
 {
     yorum.EklenmeTarihi = DateTime.Now;
     yorum.Baslik        = "";
     yorum.Aktif         = false;
     db.Yorum.Add(yorum);
     db.SaveChanges();
     return(RedirectToAction("Detay", new { id = yorum.MakaleID }));
 }
示例#2
0
        public ActionResult MakaleYaz(Makale makale, HttpPostedFileBase Resim, String etiketler)
        {
            if (makale != null)
            {
                // membership kullandım : veri tabanına asp.net membership ini ekledim
                // developer command prompt a aspnet_regsql yazdım ve adımları takip etttim
                // asp.net tarafında kaydolmamış birini kullanıcı olarak kaydedemek için : aspnet users tablsoun pk'ini kulllancici tablosunun pk'sine bağlıyorum
                // :\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config dosyasından membership, profie, rolmanager taglarini alıp projemin webconfig dosyasında system web içerisine yapıştırıyorum ve isteğime göre özellikleri değiştiriyorum.
                // provider ın başına <clear/> ekliyorum
                Kullanici aktif = Session["Kullanici"] as Kullanici;
                makale.YayinTarihi  = DateTime.Now;
                makale.MakaleTipID  = 1;
                makale.YazarID      = aktif.Id;
                makale.KapakResimID = ResimKaydet(Resim, HttpContext);

                db.Makale.Add(makale);
                db.SaveChanges();

                string[] etikets = etiketler.Split(',');
                foreach (string etiket in etikets)
                {
                    MakaleEtiket etk = db.MakaleEtiket.FirstOrDefault(x => x.Etiket.Adi.ToLower() == etiket.ToLower().Trim());
                    if (etk != null)
                    {
                        // Etiket var
                        makale.MakaleEtiket.Add(etk);
                        db.SaveChanges();
                    }
                    else
                    {
                        // Etiket yok
                        etk            = new MakaleEtiket();
                        etk.Etiket.Adi = etiket;
                        db.Etiket.Add(etk.Etiket);
                        db.SaveChanges();

                        makale.MakaleEtiket.Add(etk);
                        db.SaveChanges();
                    }
                }
            }
            return(View());
        }
        public ActionResult KayitOl(Kullanici kullanici, HttpPostedFileBase Resim, string Parola)
        {
            MembershipUser user = Membership.CreateUser(kullanici.Nick, Parola, kullanici.Mail);

            kullanici.Id         = (Guid)user.ProviderUserKey;
            Session["Kullanici"] = kullanici;
            kullanici.ResimID    = YonetimController.ResimKaydet(Resim, HttpContext);
            // HttpContext bütün web sitesini yöneten sınıftır.
            kullanici.KayitTarihi = DateTime.Now;
            db.Kullanici.Add(kullanici);
            db.SaveChanges();

            FormsAuthentication.RedirectFromLoginPage(kullanici.Nick, true);

            Session["Kullanici"] = kullanici;

            return(RedirectToAction("Index", "Home"));
        }
示例#4
0
        // ResimKaydet metodunu KullaniciController'da da kullanacağım için static tanımladım
        public static int ResimKaydet(HttpPostedFileBase Resim, HttpContextBase ctx)
        {
            YaseminBlogSitesiMVCEntities db = new YaseminBlogSitesiMVCEntities();


            int kucukWidth  = Convert.ToInt32(ConfigurationManager.AppSettings["kw"]);
            int kucukHeight = Convert.ToInt32(ConfigurationManager.AppSettings["kh"]);
            int ortaWidth   = Convert.ToInt32(ConfigurationManager.AppSettings["ow"]);
            int ortaHeight  = Convert.ToInt32(ConfigurationManager.AppSettings["oh"]);
            int buyukWidth  = Convert.ToInt32(ConfigurationManager.AppSettings["bw"]);
            int buyukHeight = Convert.ToInt32(ConfigurationManager.AppSettings["bh"]);

            // resimlerin otomatik isimlendirmesi :
            string newName = Path.GetFileNameWithoutExtension(Resim.FileName) + "-" + Guid.NewGuid() + Path.GetExtension(Resim.FileName);

            // FromStream : resmi, boyutunu sabit olmadan çekmek için kullanılır. Bir resmi istediğimiz boyutta çekerizs.
            Image orjRes = Image.FromStream(Resim.InputStream);

            Bitmap kucukRes = new Bitmap(orjRes, kucukWidth, kucukHeight);
            Bitmap ortaRes  = new Bitmap(orjRes, ortaWidth, ortaHeight);
            Bitmap buyukRes = new Bitmap(orjRes, buyukWidth, buyukHeight);

            // Bitmap buyukRes = new Bitmap(orjRes); --> orijinal hali kalsın istersek

            kucukRes.Save(ctx.Server.MapPath("~/Content/Resimler/Kucuk/" + newName));
            ortaRes.Save(ctx.Server.MapPath("~/Content/Resimler/Orta/" + newName));
            buyukRes.Save(ctx.Server.MapPath("~/Content/Resimler/Buyuk" + newName));

            Kullanici k = (Kullanici)ctx.Session["Kullanici"];

            MultiMedia dbRes = new MultiMedia();

            dbRes.Adi           = Resim.FileName;
            dbRes.BuyukResimYol = "/Content/Resimler/Buyuk" + newName;
            dbRes.OrtaResimYol  = "/Content/Resimler/Orta" + newName;
            dbRes.KucukResimYol = "/Content/Resimler/Kucuk" + newName;
            dbRes.EklenmeTarihi = DateTime.Now;
            dbRes.EkleyenID     = k.Id;

            db.MultiMedia.Add(dbRes);
            db.SaveChanges();

            return(dbRes.Id);
        }