Yazı Font Küçült Yazı Font Büyült

Excel,Word,Pdf,Image Dosyalarını Veritabanına Kaydetme

 

Merhaba arkadaşlar,bu makalemizde Excel, Word, Pdf, Image dosyalarını Sql veritabanımıza binary formatında kaydedeceğiz. Formunuza 1 adet FileUpload, Button ve Label ekleyin.

 

Resim1

Şekil 1

 

Resim2

Şekil2

 

Resim3

Şekil 3

 

Resim 4

Şekil 4

 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Data.SqlClient;

using System.IO;

using System.Data;

using System.Drawing.Imaging;

using System.Drawing;

 

public partial class _Default : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

 

    }

  

     private Boolean InsertUpdateData(SqlCommand cmd)

    {

        string baglan = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\excel.mdf;Integrated Security=True;User Instance=True";

       

        SqlConnection baglanti = new SqlConnection(baglan);

        SqlCommand komut = new SqlCommand();

       

        cmd.Connection = baglanti;

         try

        {

            baglanti.Open();

           cmd.ExecuteNonQuery();

            return true;

        }

        catch (Exception ex)

        {

            Response.Write(ex.Message);

            return false;

        }

        finally

        {

            baglanti.Close();

            baglanti.Dispose();

        }

  

}

    protected void btnYukle_Click(object sender, EventArgs e)

    {

        // Dosyayı okuyup byte a çeviriyoruz

        string filePath = FileUpload1.PostedFile.FileName;  

        string filename = Path.GetFileName(filePath);

        string ext = Path.GetExtension(filename);

        string contenttype = String.Empty;

 

        //dosya uzantılarını tanımlıyoruz.

        switch(ext)

        {

            case ".doc":

                contenttype = "application/vnd.ms-word";

                break;

            case ".docx":

                contenttype = "application/vnd.ms-word";

                break;

            case ".xls":

                contenttype = "application/vnd.ms-excel";

                break;

            case ".xlsx":

                contenttype = "application/vnd.ms-excel";

                break;

            case ".jpg":

                contenttype = "image/jpg";

                break;

            case ".png":

                contenttype = "image/png";

                break;

            case ".gif":

                contenttype = "image/gif";

                break;

            case ".pdf":

                contenttype = "application/pdf";

                break;

        }

        if (contenttype != String.Empty)

        {

 

            Stream fs = FileUpload1.PostedFile.InputStream;

            BinaryReader br = new BinaryReader(fs);

            Byte[] bytes = br.ReadBytes((Int32)fs.Length);                    

           

            //dosyayı veritabanına giriyoruz.           

           

            string strKomut = "insert into bilgi ([Ad], [Tip], [Veri]) values (@Ad, @Tip, @Veri)";

            SqlCommand cmd = new SqlCommand(strKomut);

            cmd.Parameters.Add("@Ad", SqlDbType.VarChar).Value = filename;

            cmd.Parameters.Add("@Tip", SqlDbType.VarChar).Value = contenttype;

            cmd.Parameters.Add("@Veri", SqlDbType.Binary).Value = bytes;

 

            InsertUpdateData(cmd);

 

            Label1.ForeColor = System.Drawing.Color.Green;  

            Label1.Text = "Dosya Yüklendi.";

        }

        else

        {

            Label1.ForeColor = System.Drawing.Color.Red;   

            Label1.Text = "Dosya formatı tanımlı değil. Lütfen Image/Word/PDF/Excel formatında yükleme yapın!";

        }

    }

 

    }

  

 

Bir makalenin daha sonuna geldik. Bir sonraki makalede görüşmek dileğiyle. Hoşçakalın. Bahadır ŞAHİN