30 Mart 2013 Cumartesi

Visual C# - XML verisi çekmek

winforms projelerinizde web üzerinden çeşitli xml dosyaları çekmeniz ve bunlar üzerinde işlem yapmanız gerekebilir.bu örneğimizde döviz kurlarını xml aracılığıyla projemize aktarıp form üzerinde kullanıcıya gösterelim;


ilk olarak xml kütüphanemizi projemize ekleyelim;

using System.Xml;


rdr adında xmltextreader nesnesi oluşturalım(bu nesne xml dökümanlarını okumak için kullanılır) ve kullanacağımız xml'in URL sini belirtelim;
XmlTextReader rdr = new XmlTextReader(@"http://www.tcmb.gov.tr/kurlar/today.xml");

yeni bir dataset oluşturup oluşturduğumuz bu dataset'in içini ReadXml metodu ile xmltextreader'in çektiği veriler ile dolduralım.
DataSet ds = new DataSet();
ds.ReadXml(rdr);


bu adımdan sonra verileri istediğimiz şekilde kullanabiliriz dataset aracılığı ile.biz verileri gridcontrol üzerinde göstereceğimizden dolayı bir datatable tanımlıyor ve bu datatable'a dataset içerisindeki bilgileri aktarıyoruz.

DataTable tbl = new DataTable();
tbl = ds.Tables[1];



gridControl1.DataSource = tbl;

artık verilerimiz gridcontrol üzerinde gözükecektir.işlem tamam.isterseniz datatable tanımlamadan gridcontrol'ün datasource özelliğine ds.Tables[1] de yazabilirsiniz ben daha kolay olması açısından bu yolu izledim.

29 Mart 2013 Cuma

DevExpress GridControl - Seçili satırdan değer almak

gridcontrol nesnesi üzerinde kullanıcının seçmiş olduğu satırdan değer almak için;

private void gridView1_FocusedRowChanged(object sender, FocusedRowChangedEventArgs e)
{
string deger = gridView1.GetFocusedRowCellValue("kolonadi").ToString();

}

metodunu kullanabilirsiniz.

26 Mart 2013 Salı

ADO.NET Veritabanı Bağlantı Nesneleri Yazı Dizisi 2 - SqlCommand

bu yazımızda SqlConnection nesnesi ile bağlantı kurduğumuz veritabanı üzerinde sorgulama işlemleri yapmamız için gerekli olan ado.net nesnelerinden SqlCommand nesnesi üzerinde duracağız.SqlCommand nesnesinin en temel özellikleri veritabanı üzerinde;

  1. Ekleme (INSERT)
  2. Silme (DELETE)
  3. Güncelleme (UPDATE)
  4. Seçme (SELECT)

gibi işlemleri yapabilmemize yarar.

Connection Özelliği;

SqlCommand nesnesinin hangi connection üzerinde çalıştığını belirlemek için kullanılır.SqlCommand nesnesi bağlantısı sağlanmış bir SqlConnection nesnesi üzerinden veritabanı işlemlerini gerçekleştirebilir.






connection nesnemizi yapılandıralım
SqlConnection baglanti=new SqlConnection();
baglanti.ConnectionString="Server=localhost;Port=3306;Database=candb;Uid=root";


nesne örneğimizi yaratalım ;
SqlCommand komut=new SqlCommand();

nesnemizin connection özelliğini kullanarak nesnemizi SqlConnection nesnemize bağlayalım;
komut.Connection=baglanti;


SqlCommand nesnemizin sorgu tipini belirtelim;
komut.CommandType=CommandType.Text;


Veritabanında işlemek istediğimiz sorgumuzu nesnemizin CommandText özelliğine Atayalım;
komut.CommandText="SELECT * FROM tabloadi";


buraya kadar yaptığımız işlemler sqlcommand nesnemizin bağlantısını ve çalıştırmak istediğimiz sorguyu set etmekten ibaret.şimdi yapacağımız işlemler ile sorgumuzun işlendikten sonra tarafımıza dönecek değerleri kontrol etmeye yarayacak.SqlCommand nesnemizin execute metodları ile yaptığımız işlemlerin sonuçlarını alabiliriz.(Döndürmek istediğimiz sorgu sonuçları gibi).

SqlCommand nesnemizin başlıca execute metodları;


  • ExecuteScalar();
  • ExecuteReader();
  • ExecuteNonQuery();
  • ExecuteXmlReader (): 

ExecuteScalar();Execute scalar metodu sqlcommand nesnemizin bize tek bir değer döndürmesini sağlar.

Kullanımı ;


komut.ExecuteScalar();



ExecuteReader();
Execute reader metodu Sqlcommand nesnemizin sorgu sonucunda dönen tüm değerleri tarafımıza iletmesi için kullanılır.

Kullanımı ;
komut.ExecuteReader();


ExecuteNonQuery();
Execute non query metodu Sqlcommand nesnemizden geriye değer dönmesini istemediğimizde kullanılır.insert update delete işlemlerinde tercih edilir.

Kullanımı ;
komut.ExecuteNonQuery();

ExecuteXmlReader ();
Bu metod kullanımında geriye dönen değer xml formatında olur. veritabanından XML formatlı değerler elde edebilmek için command nesnemizin bu özelliği kullanılır

Kullanımı ;
komut.ExecuteXmlReader ();


*command nesnemizden dönen değerleri değişkene atayarak kullanabilirsiniz

ayrıca sqlcommand nesnemizin parametre oluşturma özelliği ile veritabanı tipine uygun parametreler oluşturarak işlemlerimizi daha hızlı ve güvenli şekilde yapabiliriz.özellikle injection gibi konularda parametre kullanmak yararımıza olur.normal koşullarda inputları direk olarak sorgu içerisine aldığınızda (özellikle insert(ekleme) işlemlerinde) SqlCommand nesnesi kullanıcıdan almış olduğu değerin veritabanındaki kolon tipi ile uygun olup olmadığını kontrol etmektedir.fakat verilerinizi sqlcommand parametreleri içerisinde set ederseniz,girdiğiniz değer parametre tipine uygun değilse size hata verecektir.parametre kullanımı bence önemlidir.

parametre tanımlama ve değer aktarımı en basit şekilde;

cmd.Parameters.Add("@Name", SqlDbType.VarChar, 50).Value = "Can Çevikoğlu";
şeklinde yapılır.

Bir sonraki Yazımızda görüşmek üzere hepinize iyi çalışmalar.

ADO.NET Veritabanı Bağlantı Nesneleri Yazı Dizisi 1 - SqlConnection

bu yazımızda .net üzerinde veritabanı bağlantı işlemlerimizdeki olmazsa olmaz nesnelerden biri olan Connection nesnesini inceleyeceğiz.Her veritabanı için farklı configure edilmiş connection nesnesi bulunduğundan yazıdaki SqlConnection nesnesi SQL Server bağlantıları içindir.Sqlconnection nesnesi sql server bağlantılarını configure eder ve en genel anlamda bağlantımızı açmamız ve kapamamız için mutlaka kullanmamız gerekmektedir.


SqlConnection nesnesi; sahip olduğu ConnectionString özelliğine atanan bağlantı cümlesine göre ilgili bağlantı üzerinde;

  • bağlantı açma
  • bağlantı kapama
  • bağlantıya ping atma
  • bağlantı süresi
gibi birçok işlemi gerçekleştirebilir.


dilerseniz ufak bir örnekle önce bir veritabanına bağlanalım,bağlantı durumunu kullanıcıya bildirelim ve ardından bağlantımızı kapatalım.

programımız içerisinde ado.net bileşenlerini kullanabilmek için aşağıdaki namespace'leri üst kısıma ekleyiniz.
using System.Data.SqlClient;
using System.Data;

nesne örneğimizi oluşturalım;
SqlConnection baglanti=new SqlConnection();


SqlConnection nesnemizi bağlayacak olduğumuz veritabanına yönlendirelim.
baglanti.ConnectionString="Server=localhost;Port=3306;Database=candb;Uid=root";

bağlantımızı açalım;
baglanti.Open();
kullanıcıya mesajımızı verdirelim;
MessageBox.Show("Bağlantı Açık");
Bağlantımızı Kapatalım;
baglanti.Close(); 


SqlConnection nesnesi için bağlantı kontrolü şu şekilde Yapılabilir

if(baglanti.IsOpen)
{

MessageBox.Show("baglantınız açık");

}
else
{
MessageBox.Show("baglantınız kapalı");
}




sqlconnection nesnesinin en temel özelliği budur.benzer birçok özelliği bulunmakla birlikte en çok yukarıdaki saydığım özellikler için kullanılmaktadır.


.NET Veritabanı Bağlantısı Yazı Dizisi - 1

uzun bir aradan sonra yeni bir yazı dizisiyle tekrar karşınızdayım.çevremden gördüğüm kadarıyla (özellikle bu işe yeni başlayan arkadaşların) yazılım alanında en çok anlamakta sıkıntı çektikleri konuların başında geliyor veritabanı işlemleri.internet üzerinde açıklamasız yayınlanan kodlar,çalıştırılamayan uygulamalar vs. lerde bu işin içine girdiğinde sorun içinden çıkılmaz bir hal alıyor.bu yazı dizisini okuduktan sonra CSharp.NET üzerinde veritabanı işlemleri ile ilgili bir sıkıntınızın kalmayacağını düşünüyorum.umarım faydalı olur diyerek ilk konumuza Başlayalım.

(konuları mümkün olduğunca sadece ve anlaşılır bir dille anlatmayı ve mümkün olduğunca çok örnek vermeyi hedefliyorum ki yazılanlar daha iyi anlaşılsın.

1-Veritabanı Nedir ?

en kısa açıklamasıyla veritabanı yüksek miktarlardaki verileri belirli bir düzen içerisinde saklayan,üzerlerinde işlemler yapan,kendisinden bağımsız diğer uygulamalarla veri alış verişi sağlayabilen bir uygulamadır.

2- ADO.NET (ActiveX Data Objects.NET) Nedir ?

ADO.Net microsoft firması tarafından kullanıcılara sunulan ve veritabanları ile uygulamalarımız arasında bağlantı kurmamıza yarayan bir sistemdir.Ado.net ile veritabanı bağlantısı yine ADO.NET in içerisinde barındırdığı nesneler ile gerçekleşir.çeşitli işlemler için çeşitli nesneler vardır ve kullanıcı bu nesneleri istediği gibi düzenleyerek veritabanı işlemlerini gerçekleştirir.Esnekliği,kolay kullanımı ve sürekli olarak geliştirilmesiyle en tercih edilen mimarilerin başında gelmektedr.

bir sonraki yazımda teker teker ADO.NET bileşenlerinin tanımlarını,bunların hangilerinin ne işe yaradığını ve nasıl kullanıldıklarını örnekler ile incelemeye çalışacağız.

24 Mart 2013 Pazar

Can Çevikoğlu - .NET Programlama: DXPerience v12.1 İndir

Can Çevikoğlu - .NET Programlama: DXPerience v12.1 İndir: Developer Express ürünü windows tabanlı geliştirmiş olduğunuz projeler için kullanabileceğiniz güzel bir component barındırır.aşağıda verece...

Can Çevikoğlu - .NET Programlama: ASPxCaptcha ile Captcha Oluşturun

Can Çevikoğlu - .NET Programlama: ASPxCaptcha ile Captcha Oluşturun: ASPxCaptcha kontrolü devexpress in bizler için sağladığı en güzel kontrollerden biri bana sorarsanız.eskiden üye sayfalarında doğrulama kodu...

Can Çevikoğlu - .NET Programlama: Devexpress Universal v2012.2 Crack ile Beraber

Can Çevikoğlu - .NET Programlama: Devexpress Universal v2012.2 Crack ile Beraber: Uzun süredir beklediğiniz yeni devexpress sürümü olan universal 2012 nin crackini sizlerle paylaşıyorum. Aşağıdaki adımları takip ederse...

Can Çevikoğlu - .NET Programlama: SQL Server 2008 Serial - Tüm Sürümler için

Can Çevikoğlu - .NET Programlama: SQL Server 2008 Serial - Tüm Sürümler için: Microsoft SQL Server 2008 Enterprise JD8Y6-HQG69-P9H84-XDTPG-34MBB Microsoft SQL Server 2008 Developer PTTFM-X467G-P7RH2-3Q6CG-4DMYB ...

15 Mart 2013 Cuma

.NET MySQL Bağlantısı


.NET Ortamında MySQL veritabanına bağlantı için şu adımları takip edebilirsiniz :

mysql'in yani ORACLE firmasının .NET için geliştirmiş olduğu mysql.net connector isimli bir program mevcut.öncelikle bu programı indirip bilgisayarınıza kurmanız gerekmekte.

Buradan  en son mysql .NET Connector programını indirip bilgisayarınıza kurabilirsiniz.


ardından projenize referans eklemek için ;

Solution Explorer üzerinde projenize sağ tıklayıp "Add Reference" ekranını açın.

.NET Sekmesi altında







http://www.cihanyakar.com/wp-content/uploads/2009/05/4.jpg

Şekildeki .dll leri bulabilirsiniz.




Arzu ederseniz bu dll'leri internet üzerinden indirip kendinizde projenize referans olarak ekleyebilirsiniz.