r . Grv. Aybike MEK CV_EKLE isimli bir veritaban oluturun. CV - - PowerPoint PPT Presentation
r . Grv. Aybike MEK CV_EKLE isimli bir veritaban oluturun. CV - - PowerPoint PPT Presentation
BLG4134 Grsel Programlama III r . Grv. Aybike MEK CV_EKLE isimli bir veritaban oluturun. CV isimli tabloyu aa daki ekilde oluturun. Aadaki kod ile bir stored procedure oluturun. Bunun iin
CV_EKLE isimli bir veritabanı oluşturun. CV isimli tabloyu aşağıdaki şekilde oluşturun.
Aşağıdaki kod ile bir stored procedure
- luşturun.
Bunun için Programmability + tıklanarak açılır, Stored
Procedure sağ tıklanır ve «new stored procedure» tıklanır.
Açılan sayfanın içeriği silinir.
Aşağıdaki kod yazılır ve çalıştırılır.
use CV_EKLE go CREATE PROCEDURE Sp_AddFiles AS SELECT TOP 1 AdSoyad FROM CV
Oluşan SP_AddFiles dosyası Modify modda açılır. İçeriği silinir ve aşağıdaki kod eklenip çalıştırılır.
USE [CV_EKLE]
GO
/****** Object: StoredProcedure [dbo].[Sp_AddFiles] Script Date: 04/21/2015 14:27:11 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER Procedure [dbo].[Sp_AddFiles]
(
@AdSad Varchar(50),
@Unvan Varchar (50),
@icerik Varchar (max),
@fname Varchar(200),
@ext char(10),
@fdata VarBinary(max)
)
As
Begin
Insert Into CV(AdSoyad,Unv, Icrk,FileName,Extension,FileData)
Values(@AdSad,@Unvan,@icerik,@fname,@ext,@fdata)
End
Veritabanına Dosya Kaydetme
Visual Studio 2010’da CV_EKLE isimli yeni bir web
uygulaması başlatın ve Default.aspx sayfasını aşağıdaki şekilde düzenleyin.
Dersin web sayfasında verilen aşağıdaki dosyaları
projenize ekleyin.
anatablo.cs DataHelper.cs mesaj.cs Upload.cs
Button1 Click olayına aşağıdaki kodu yazın
if (FileUpload1.HasFile)
{
Int32 intfileSize = 0;
Stream fileStream = null;
// Gets the Size of the File
intfileSize = FileUpload1.PostedFile.ContentLength;
// Reads the File
fileStream = FileUpload1.PostedFile.InputStream;
byte[] fileContent = new byte[intfileSize + 1];
int intStatus = 0;
intStatus = fileStream.Read(fileContent, 0, intfileSize);
string ext = System.IO.Path.GetExtension(FileUpload1.FileName.ToString());
islem1.ac();
if (obj.UploadFile(TextBox1.Text, TextBox2.Text, TextBox3.Text, FileUpload1.FileName.ToString(), fileContent, ext))
{
TextBox1.Text="";
TextBox2.Text="";
TextBox3.Text="";
MessageBox.Show("Kayıt Başarılı bir şekilde eklenmiştir.");
}
else MessageBox.Show("Resim eklemeyi unuttunuz.");
ConnectionString Upload obj = new Upload(); anatablo islem1 = new anatablo(); Tanımlamalarını yapmayı unutmayın!!! ÇALIŞTIRIP GÖZLEMLEYİN.
Stored Procedure’ü ekleyin.
Bunun için SQL Server Management Studio açılır CV_EKLE veritabanı
dosyaOku.aspx isimli bir sayfa ekleyin. Sayfanın altına «Dosya Oku» şeklinde bir link ekleyin ve linki
bu sayfaya bağlayın.
dosyaOku.aspx sayfasına bir GridView ekleyin ve
aşağıdaki şekilde düzenleyin.
Seçme özelliğini açın ve sütun isimlerini aşağıdaki şekilde
düzenleyin.
DOSYA İNDİR isimli bir buton ekleyin.
CV tablosunu aşağıdaki şekilde güncelleyin.
GridView1_SelectedIndexChanged olayına:
GridView1.SelectedRowStyle.BackColor =
System.Drawing.Color.Bisque;
if (GridView1.SelectedRow.Cells[1].Text != "" &&
GridView1.SelectedRow.Cells[1].Text != " ") Button1.Enabled = true;
else Button1.Enabled = false;
Dosyaları
veritabanından
- kuyabilmek
için Sp_GetFileNames isimli bir stored procedure yazın.
use CV_EKLE go CREATE PROCEDURE Sp_GetFileNames AS SELECT TOP 1 AdSoyad FROM CV
Sp_GetFileNames prosedürünü modify modda açın ve içeriğini aşağıdaki şekilde düzenleyin.
USE [CV_EKLE]
GO
/****** Object: StoredProcedure [dbo].[Sp_GetFile] Script Date: 09/27/2013 09:37:53 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
- - =============================================
- - Author:
<Author,,Name>
- - Create date: <Create Date,,>
- - Description:
<Description,,>
- - =============================================
ALTER Procedure [dbo].[Sp_GetFileNames]
(
@fid int
)
As
Begin
Select FileData,Extension From CV Where ID=@fid
End
ID alanının da Gridview1’de görünmesini sağlayın.
Button1 click olayına:
byte[] fileData =
- bj.GetFile(int.Parse(GridView1.SelectedRow.Cells[4].Text));
Response.ClearContent(); Response.AddHeader("Content-Disposition",
"attachment; filename=" + GridView1.SelectedRow.Cells[4].Text);
BinaryWriter bw = new
BinaryWriter(Response.OutputStream);
bw.Write(fileData); bw.Close(); Response.ContentType = ReturnExtension(obj.Ext); Response.End();
Dersin web sayfasında bulunan ReturnExtension isimli
dosyanın içerisinde bulunanları dosyaOku sayfasına ekleyin.
ÇALIŞTIRIP GÖZLEMLEYİN.
HATA KONTROLLERİNİ YAPIN
DosyaOku sayfasında kullanıcı seçim yapmadan butonu
tıklarsa uyarı mesajı verin.
24