Dosya daha önce yüklenmiş mi ?

Aynı dosya daha önce yüklenmiş mi yoksa ilk kez mi yükleniyor kontrolünü sağlamak için, yüklenen dosyanın checksum ını alıp kaydediyoruz ve sonradan yüklenen dosyalarla karşılaştırıyoruz. Kabaca checksum, yüklenen dosyanın içeriğinin okunarak karşılığında bir değer oluşturulmasıdır. Bu yönteme 100% güvenilir çalışır demek yanlış olur, ama büyük ölçüde güvenilir bir yöntemdir. Şöyle bir örnek vereyim, kullanıcı sitemize bir fotoğraf yükleyecek, fakat aynı foto zaten yüklenmiş, eğer fotoğrafı photoshop yada benzeri bir programda açıp üzerine dahi yazsa oluşacak checksum değişir. Bu yöntemi biz bir projemizde şöyle kullanıyoruz. Her yüklenen dosyanın checksum değerini db deki ilgili alana yazıyoruz ve sonrasında yüklenen dosyaların değerleriyle karşılaştırıyoruz. Basit ama etkili bir yöntem olduğunu söyleyebilirim. Okumaya devam et Dosya daha önce yüklenmiş mi ?

Asp.Net kontrollerine giriş

Bir yazı dizisine başlamak istiyorum, başlıktan da anlaşılacağı gibi dizimizin adı kontroller (controller). En sık kullanılan kontroller hakkında temel bilgilerileri örneklerle yazmaya çalışacağım. Asp.Net ile yeni tanışmış yada tanışacak insanlara güzel bir kaynak olacağını düşünüyorum. Şimdi hangi kontrollere bulaşacağız bunun bir listesini yazayım, ilerleyen günlerde de sıradan üçer beşer bu kontrollere detaylı bir şekilde göz atarız. Hatta grup grup yazayım.

  1. Label, literal, textbox, button, linkbutton, imagebutton
  2. Dropdownlist, checkbox, checkboxlist, radiobutton, radiobuttonlist
  3. Gridview, datalist, repeater

C#.Net ile MonthCalendar nesnesini kullanarak verileri filtremelek.

Merhabalar efendim, bu seferde C#.net de MonthCalendar nesnesiyle tarihe göre filtreleme nasıl yapacağımızı göreceğiz.. Bu uygulama ilk yaptığımız örneğin bir nevi meyvelerinden birtanesi. Sadece kullanının takvim üzerinden seçeceği günü sql cümlemize ekleyip datagridview1 nesnemizi yeniden dolduracağız. c# monthcalendar örneği..

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            gridDoldur("SELECT * FROM TABLO order by ALAN DESC");
        }

        private void gridDoldur(string sqlCumle) {
            string ConStr = "Server=server_adresi; Database=veritabani; uid=kullanici_adi; " +
                            "pwd=sifre;pooling=true; connection lifetime=10; connection timeout=5; packet size=1024;";
            SqlConnection conn = new SqlConnection(ConStr);
            string sql = sqlCumle;
            SqlDataAdapter da = new SqlDataAdapter(sql, conn);
            DataSet ds = new DataSet();
            da.Fill(ds);
            dataGridView1.DataSource = ds.Tables[0];
        }

        private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
        {

            string tarih = monthCalendar1.SelectionRange.Start.ToString();
            tarih = tarih.Substring(0, 10);
            gridDoldur("SELECT * FROM TABLO WHERE TARIH = '" + tarih + "' ");
        }

    }
}

C#.Net ile DataGridView içinde veri gösterimi..

C#.Net öğrenmeye, ilgilenmeye yeni yeni başlıyorum. Bildiklerimi, gördüklerimi ve yaptıklarımı sizlerle paylaşmak istedim. Webde bir çok kaynak bulunmasına rağmen sıfırdan başlayan birinin işine yarayacak kaynak malesef oldukça az. Aşşağıdaki kodlar sayesinde veritabanındaki kayıtları oldukça basit bir şekilde listeleyebilir veya filtreleyebilirsiniz. Bu yapı sayesinde her seferinde veritabanı bağlantısını ve datagridview ile ilgili diğer tanımlamaları yapmak zorunda kalmıyorsunuz. Sadece istediğiniz sql sorgusunu yolluyorsunuz okadar.. Terimlerde veya ifadelerimde hata varsa affola :)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace WindowsFormsApplication2
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        public void Form2_Load(object sender, EventArgs e)
        {
            griddoldur("select * from tabloadi"); // form yüklendiğinde, yani program ilk çalıştığında bu sorguyla birlikte datagridview1 nesnemizi dolduruyoruz.

        }

        public void griddoldur(string sqlCumle) {
            string ConStr = "Server=veritabani_adresi; Database=veritabani_adi; uid=kullanici_adi; " +
                               "pwd=sifre;pooling=true; connection lifetime=10; connection timeout=5; packet size=1024;";
            SqlConnection conn = new SqlConnection(ConStr);
            string sql = sqlCumle; // sql cümlemiz fonksiyonumuzdan değişken bir biçimde geliyor. bkz: griddoldur(string sqlCumle)
            SqlDataAdapter da = new SqlDataAdapter(sql, conn);
            DataSet ds = new DataSet();
            da.Fill(ds);
            dataGridView1.DataSource = ds.Tables[0]; // veritabanına bağlanıp son olarakda dataGridView1 veri kaynağını dataadaptere bağlıyoruz.
        }

        private void buton1_Click(object sender, EventArgs e)
        {
            griddoldur("select * from digertabloadi"); // butona tıkladığımızda diğer tablodaki verileri datagridview1 nesnesinde görüntüleyebiliriz.
        }

        private void buton2_Click(object sender, EventArgs e)
        {
            griddoldur("SELECT * from tabloadi where alanadi = "+textbox1.text+" ") // istediğimiz gibi şekillendirebiliriz. bu sayede herseferinde yeniden yeniden kodlar yazmamıza gere kalmaz.
        }

    }
}