Merhaba Arkadaslar
Buguku makalemizde storeprocedure ler içerisinde output ile dısarı veri aktarımını csharp ile yakalamasını inceleyecegiz. Örnek uygulamamızda verdigimiz personelid degerine esit olan personelin ad soyad ve emailbilgilerini storeprocedure output cıktısı ile yakalayacagız.
Storeprocedure Yazalım.
create proc Sp_IdverPersonelBilgiAl
(
@id int,
@Ad nvarchar(50) OUTPUT,
@Soyad nvarchar(50) OUTPUT,
@EmailAdress nvarchar(60) OUTPUT
)
as
begin
Select @Ad = firstname, @Soyad = Lastname, @EmailAdress = EmailAddress from Person.contact where Contactid = @id
end
Simdi program.cs kısmına gecelim .
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
namespace StoreProcedureOutputKullanimi
{
class Program
{
static void Main(string[] args)
{
// SqlConnection nesnemizi ayarladık .
SqlConnection con = new SqlConnection("data source=localhost;initial catalog=AdventureWorks;integrated security=true");
// Sqlcommand nesnemizi ayarladık ve storeprocedure adımızı yazdık .
SqlCommand cmd = new SqlCommand("Sp_IdverPersonelBilgiAl", con);
// Sqlcommand icindeki verimizin storeprocedure oldugunu belirttik.
cmd.CommandType = System.Data.CommandType.StoredProcedure;
// id parametremiz input type ( procedure bizden bekler ) 1 atadık .
cmd.Parameters.Add("@id", System.Data.SqlDbType.Int).Value = 1;
// Asagıdaki sekilde output olarak yakalayacagımız parametrelerimizi belirttik ...
cmd.Parameters.Add("@Ad", System.Data.SqlDbType.NVarChar,50).Direction = System.Data.ParameterDirection.Output;
cmd.Parameters.Add("@Soyad", System.Data.SqlDbType.NVarChar,50).Direction = System.Data.ParameterDirection.Output;
cmd.Parameters.Add("@EmailAdress", System.Data.SqlDbType.NVarChar,60).Direction = System.Data.ParameterDirection.Output;
// baglantımızı actık .
con.Open();
// komutumuzu calıstırdık .
cmd.ExecuteScalar();
// baglantımızı kapattık
con.Close();
// ekrana parametre degerlerimizi yazdık .
Console.WriteLine("Ad {0} Soyad {1} EmailAdress {2}", cmd.Parameters["@Ad"].Value.ToString(), cmd.Parameters["@Soyad"].Value.ToString(), cmd.Parameters["@EmailAdress"].Value.ToString());
}
}
}
Uygulamamızı Calıstıralım .

.Net Ile Kalın
StoreProcedureOutputKullanimi.rar (20,34 kb)