コード例 #1
0
    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        int pdfId = Convert.ToInt32(e.Keys["Id"]);

        using (MyWebSiteDatabaseEntities myEntity = new MyWebSiteDatabaseEntities())
        {
            var aramaSonucu = from pdf in myEntity.PdfFiles
                              where pdf.Id == pdfId
                              select pdf;

            if (aramaSonucu != null)
            {
                DropDownList başlıkDropDownList = (DropDownList)Panel1.FindControl("DropDownList1");
                string       başlıkİsmi         = Convert.ToString(başlıkDropDownList.SelectedItem);
                string       virtualFolder      = "~/PdfFiles/" + başlıkİsmi + "/";
                string       physicalFolder     = Server.MapPath(virtualFolder);

                PdfFile pdfFile = aramaSonucu.ToList().ElementAt(0);
                // "FileUrl"in başındaki "~/" siliniyor.
                string fileUrl = pdfFile.FileUrl.Substring(2);
                // Sitenin "root"u, "fileurl"a ekleniyor.
                // MapPath'e "~/" eklenmezse "currentServer" olarak "Management" klasörünü alıyor.
                string fullPath = Server.MapPath("~/" + fileUrl);

                // Pdf dosyası bulunursa siliniyor.
                if (File.Exists(fullPath))
                {
                    File.Delete(fullPath);
                }
            }
        }
    }
コード例 #2
0
    protected void Page_Load(object sender, EventArgs e)
    {
        // "VideoLinksMenu.aspx"in gönderdiği "Video" parametresi alınıyor.
        if (!string.IsNullOrEmpty(Request.QueryString["Video"]))
        {
            int requestedVideoId = Convert.ToInt32(Request.QueryString.Get("Video"));
            using (MyWebSiteDatabaseEntities myEntity = new MyWebSiteDatabaseEntities())
            {
                var myVideo = from video in myEntity.VideoUrls
                              where video.Id == requestedVideoId
                              select video.VideoLink;

                // Aranan video veritabanında bulunmuşsa sayfa açılacak.
                if (myVideo != null)
                {
                    /* Query'den 1 adet video dönecek. Fakat query sonucu, birden çok veri
                     * olarak algılanıyor. Bunu "ToList()" ile listeye çevirip ilk elemanını
                     * alınca istenen videoya ulaşılmış oluyor.
                     */
                    videoUrl = myVideo.ToList().ElementAt(0);
                }
                // Aranan video veritabanında bulunamazsa AnaSayfa'ya dönülecek.
                else
                {
                    Response.Redirect("Default.aspx");
                }
            }
        }
        else
        {
            Response.Redirect("Default.aspx");
        }
    }
コード例 #3
0
    protected void Page_Load(object sender, EventArgs e)
    {
        using (MyWebSiteDatabaseEntities myEntity = new MyWebSiteDatabaseEntities())
        {
            var pdfSonuçları = from pdf in myEntity.PdfFiles
                               orderby pdf.Id descending
                               select pdf;

            List <PdfFile> pdfListesi = new List <PdfFile>();

            for (int i = 0; i < 5; i++)
            {
                pdfListesi.Add(pdfSonuçları.ToList().ElementAt(i));
            }

            pdfRepeater.DataSource = pdfListesi;
            pdfRepeater.DataBind();

            var videoSonuçları = from video in myEntity.VideoUrls
                                 orderby video.Id descending
                                 select video;

            List <VideoUrl> videoListesi = new List <VideoUrl>();

            for (int i = 0; i < 5; i++)
            {
                videoListesi.Add(videoSonuçları.ToList().ElementAt(i));
            }

            videoRepeater.DataSource = videoListesi;
            videoRepeater.DataBind();
        }
    }
コード例 #4
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!string.IsNullOrEmpty(Request.QueryString["PDF"]))
        {
            int pdfId = Convert.ToInt32(Request.QueryString.Get("PDF"));

            using (MyWebSiteDatabaseEntities myEntity = new MyWebSiteDatabaseEntities())
            {
                var aramaSonucu = from pdf in myEntity.PdfFiles
                                  where pdf.Id == pdfId
                                  select pdf;

                // Veritabanında, query ile gönderilen PDF Id'si bulunursa sayfa açılacak.
                if (aramaSonucu != null)
                {
                    // Bulunan item, pdfFile'a dönüştürülüyor.
                    PdfFile pdfFile = aramaSonucu.ToList().ElementAt(0);

                    // "localHost" text'i alınıyor.
                    string localHost = HttpContext.Current.Request.Url.Host;

                    // "port" numarası alınıyor.
                    string port = HttpContext.Current.Request.Url.Port.ToString();

                    // Url başındaki "~" işareti siliniyor.
                    string fileUrl = pdfFile.FileUrl.Substring(1);

                    pdfUrl = fileUrl;
                }
                // Aranan PDF Url veritabanında yoksa AnaSayfa'ya dönülecek.
                else
                {
                    Response.Redirect("PdfFilesMenu.aspx");
                }
            }
        }
        else
        {
            Response.Redirect("PdfFilesMenu.aspx");
        }
    }
コード例 #5
0
    protected void Page_Load(object sender, EventArgs e)
    {
        string anaBaşlıkParametre = Request.QueryString.Get("AnaBaslik");

        // Sayfaya "AnaBaslik" parametresi gönderildiyse;
        if (anaBaşlıkParametre != null)
        {
            int anaBaşlıkId = Convert.ToInt32(Request.QueryString.Get("AnaBaslik"));

            using (MyWebSiteDatabaseEntities myEntities = new MyWebSiteDatabaseEntities())
            {
                /* Parametre olarak gelen "AnaBaslik"ın, veritabanında bulunup bulunmadığı
                 * kontrol ediliyor.
                 */
                var anaBaşlık = from konu in myEntities.AnaBasliklars
                                select konu.Id;

                if (anaBaşlık.Contains(anaBaşlıkId))
                {
                    var videolar = from konu in myEntities.VideoUrls
                                   where konu.AnaBaslikId == anaBaşlıkId
                                   orderby konu.VideoBasliği ascending
                                   select konu;
                    List <VideoUrl> videoListesi = videolar.ToList();

                    if (videoVarMı(videoListesi) == false)
                    {
                        return;
                    }
                    else
                    {
                        if (Request.IsAuthenticated) // "Logged in" olunduysa
                        {
                            ListView1.DataSource = videoListesi;
                            ListView1.DataBind();
                        }
                        else // "Logged in" olunmadıysa
                        {
                            List <VideoUrl> örnekVideoLinkleri = new List <VideoUrl>();
                            // Tüm listedeki ilk 3 dosya bilgisi, örnek listeye atılıyor.
                            // Böylece anonim kullanıcılara sadece ilk 3 dosya gösterilecek.
                            // Tüm konuda 3'ten az dosya varsa, örnek olarak 1 dosya gösterilecek.
                            int örnekVideoSayısı = 3;
                            if (örnekVideoSayısı > videoListesi.Count)
                            {
                                örnekVideoSayısı = 1;
                            }
                            for (int i = 0; i < örnekVideoSayısı; i++)
                            {
                                örnekVideoLinkleri.Add(videoListesi.ElementAt(i));
                            }
                            ListView1.DataSource = örnekVideoLinkleri;
                            ListView1.DataBind();
                        }
                    }
                }
                else
                {
                    Response.Redirect("Default.aspx");
                }
            }
        }
        else
        {
            Response.Redirect("Default.aspx");
        }
    }
コード例 #6
0
    protected void SaveButton_Click(Object Src, EventArgs E)
    {
        // Linkte "Video" id numarası gönderildiyse
        if (!string.IsNullOrEmpty(Request.QueryString["Video"]))
        {
            int    videoId  = Convert.ToInt32(Request.QueryString.Get("Video"));
            string userName = Membership.GetUser().ToString();

            VideoYorumlari yeniYorum = new VideoYorumlari();
            yeniYorum.VideoId  = videoId;
            yeniYorum.UserName = userName;
            yeniYorum.Tarih    = DateTime.Now.ToString();
            TextBox yorumTextBox = (TextBox)LoginView1.FindControl("yorumTextBox");

            // "TrimStart" ile text'in başında boş kısım varsa kesiliyor.
            if (!string.IsNullOrEmpty(yorumTextBox.Text.TrimStart()))
            {
                yeniYorum.Yorum = yorumTextBox.Text;

                using (var myEntity = new MyWebSiteDatabaseEntities())
                {
                    myEntity.VideoYorumlaris.Add(yeniYorum);
                    myEntity.SaveChanges();
                }

                // Yorum gönderildikten sonra textbox'ın içi siliniyor.
                yorumTextBox.Text = "";

                // Yeni liste, repeater'a bağlanıyor. Yeni yorum en başa ekleniyor.
                Repeater repeater = (Repeater)UpdatePanel1.FindControl("Repeater1");
                videoYorumList.Insert(0, yeniYorum);
                repeater.DataSource = videoYorumList;
                repeater.DataBind();

                repeater.Visible   = true;
                uyarıLabel.Visible = false;
            }
        }

        // Linkte "PDF" url'si gönderildiyse
        else if (!string.IsNullOrEmpty(Request.QueryString["PDF"]))
        {
            int    requestedPdfId = Convert.ToInt32(Request.QueryString.Get("PDF"));
            string userName       = Membership.GetUser().ToString();

            PdfYorumları yeniYorum = new PdfYorumları();
            yeniYorum.PdfId    = requestedPdfId;
            yeniYorum.UserName = userName;
            yeniYorum.Tarih    = DateTime.Now.ToString();
            TextBox yorumTextBox = (TextBox)LoginView1.FindControl("yorumTextBox");

            // "TrimStart" ile text'in başında boş kısım varsa kesiliyor.
            if (!string.IsNullOrEmpty(yorumTextBox.Text.TrimStart()))
            {
                yeniYorum.Yorum = yorumTextBox.Text;

                using (var myEntity = new MyWebSiteDatabaseEntities())
                {
                    myEntity.PdfYorumları.Add(yeniYorum);
                    myEntity.SaveChanges();
                }
            }

            // Yorum gönderildikten sonra textbox'ın içi siliniyor.
            yorumTextBox.Text = "";

            // Yeni liste, repeater'a bağlanıyor. Yeni yorum en başa ekleniyor.
            Repeater repeater = (Repeater)UpdatePanel1.FindControl("Repeater1");
            pdfYorumList.Insert(0, yeniYorum);
            repeater.DataSource = pdfYorumList;
            repeater.DataBind();

            repeater.Visible   = true;
            uyarıLabel.Visible = false;
        }

        // "deleteButton"ların "visible" özellikleri ayarlanıyor.
        commentDeleteButtonVisible(Repeater1);
    }
コード例 #7
0
    protected void Page_Load(object sender, EventArgs e)
    {
        videoYorumList = new List <VideoYorumlari>();
        pdfYorumList   = new List <PdfYorumları>();

        // "VideoViewPage" sayfası açılırsa, yani parametre olarak "Video" gelmişse;
        if (!string.IsNullOrEmpty(Request.QueryString["Video"]))
        {
            // "VideoLinksMenu.aspx"in gönderdiği "Video" parametresi alınıyor.
            string parametre        = Request.QueryString.Get("Video");
            int    requestedVideoId = Convert.ToInt32(parametre);

            using (MyWebSiteDatabaseEntities myEntity = new MyWebSiteDatabaseEntities())
            {
                // sayfaya kullanıcı yorumları ekleniyor.
                var yorumlar = from yorum in myEntity.VideoYorumlaris
                               where yorum.VideoId == requestedVideoId
                               orderby yorum.Tarih descending
                               select yorum;

                videoYorumList = yorumlar.ToList();

                if (videoYorumList.Count > 0)
                {
                    Repeater1.DataSource = yorumlar.ToList();
                    Repeater1.DataBind();

                    commentDeleteButtonVisible(Repeater1);

                    uyarıLabel.Visible = false;
                }
                else
                {
                    // Yorum bulunamazsa "Repeater1" görünmez yapılıp uyarıLabel gösteriliyor.
                    Repeater1.Visible  = false;
                    uyarıLabel.Visible = true;
                }
            }
        }
        // "PdfViewPage" sayfası açılırsa, yani parametre olarak "PDF" gelmişse;
        else if (!string.IsNullOrEmpty(Request.QueryString["PDF"]))
        {
            int pdfId = Convert.ToInt32(Request.QueryString.Get("PDF"));

            using (MyWebSiteDatabaseEntities myEntity = new MyWebSiteDatabaseEntities())
            {
                // sayfaya kullanıcı yorumları ekleniyor.
                var yorumlar = from yorum in myEntity.PdfYorumları
                               where yorum.PdfId == pdfId
                               orderby yorum.Tarih descending
                               select yorum;

                pdfYorumList = yorumlar.ToList();

                if (pdfYorumList.Count > 0)
                {
                    Repeater1.DataSource = yorumlar.ToList();
                    Repeater1.DataBind();

                    commentDeleteButtonVisible(Repeater1);

                    Repeater1.Visible  = true;
                    uyarıLabel.Visible = false;
                }
                else
                {
                    // Yorum bulunamazsa "Repeater1" görünmez yapılıp uyarıLabel gösteriliyor.
                    Repeater1.Visible  = false;
                    uyarıLabel.Visible = true;
                }
            }
        }
    }
コード例 #8
0
    protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
    {
        if (e.CommandName == "Delete")
        {
            int yorumId = Convert.ToInt32(e.CommandArgument);

            using (MyWebSiteDatabaseEntities myEntity = new MyWebSiteDatabaseEntities())
            {
                // Repeater'daki item'lar "VideoYorumlari" ise;
                if (videoYorumList.Count > 0)
                {
                    for (int i = 0; i < videoYorumList.Count; i++)
                    {
                        // Item listeden silinip, liste repeater'a bağlanıyor dataSource olarak
                        if (videoYorumList[i].Id == yorumId)
                        {
                            videoYorumList.RemoveAt(i);
                            Repeater1.DataSource = videoYorumList;
                            Repeater1.DataBind();
                        }
                    }

                    // Yeniden "deleteButton"un "Visible" özelliği ayarlanıyor.
                    commentDeleteButtonVisible(Repeater1);

                    // Item, database'ten siliniyor
                    var aramaSonucu = from yorum in myEntity.VideoYorumlaris
                                      where yorum.Id == yorumId
                                      select yorum;

                    VideoYorumlari arananYorum = aramaSonucu.ToList().ElementAt(0);
                    myEntity.VideoYorumlaris.Remove(arananYorum);
                    myEntity.SaveChanges();
                }

                // Repeater'daki item'lar "PdfYorumları" ise;
                if (pdfYorumList.Count > 0)
                {
                    for (int i = 0; i < pdfYorumList.Count; i++)
                    {
                        // Item listeden silinip, liste repeater'a bağlanıyor dataSource olarak
                        if (pdfYorumList[i].Id == yorumId)
                        {
                            pdfYorumList.RemoveAt(i);
                            Repeater1.DataSource = pdfYorumList;
                            Repeater1.DataBind();
                        }
                    }

                    // Yeniden "deleteButton"un "Visible" özelliği ayarlanıyor.
                    commentDeleteButtonVisible(Repeater1);

                    // Item, database'ten siliniyor
                    var aramaSonucu = from yorum in myEntity.PdfYorumları
                                      where yorum.Id == yorumId
                                      select yorum;

                    PdfYorumları arananYorum = aramaSonucu.ToList().ElementAt(0);
                    myEntity.PdfYorumları.Remove(arananYorum);
                    myEntity.SaveChanges();
                }
            }
        }
    }