Merhaba,
sirasiyla anlatiyorum.
- MySql icin eklemeniz gereken namespace
using MySql.Data.MySqlClient;
- Ardindan projenizde bir adet klasör olusturun ve adini ise DataServices olarak verin,
- Actiginiz klasör icerisine bir adet Interface ve ismi IDataService verin.
public interface IDataService
{
object ApplyCommand(string cmdStr);
}
- Actiginiz klasör icerisine bir adet de Class olusturup ve ismi DataService olarak verin. DataService Class'ina IDataService interface'ini implemente edin. Bu asagidaki metodda DataTable döndürüyor örnek olarak. Siz isteginize göre degistirebilirsiniz. Gerekli kodlar asagidadir.
public class DataService : IDataService
{
public object ApplyCommand(string cmdStr)
{
if (string.IsNullOrEmpty(cmdStr)) return null;
MySqlConnection _connection = null;
MySqlDataAdapter _adapter = null;
try
{
using (_connection = new MySqlConnection("Server=SERVER_ADRESI;Database=VERITABANI_ISMI;Uid=KULLANICI_ADI;Pwd=SIFRE"))
{
_connection.Open();
DataTable dt = new DataTable();
MySqlCommand cmd = new MySqlCommand(cmdStr, _connection);
using (_adapter = new MySqlDataAdapter(cmd))
{
_adapter = new MySqlDataAdapter(cmd);
_adapter.Fill(dt);
}
_connection.Close();
return dt;
}
}
catch (Exception xErr)
{
return xErr;
}
finally
{
if (_connection.State != ConnectionState.Closed) _connection.Dispose();
if (_adapter != null) _adapter.Dispose();
}
}
}
- Artik istediginiz yerde bu interface'in implemente edildigi sinifi ve bu sinifa ait olusturdugunuz metodlari cagirip islemlerinizi gelecekte herhangi bir karmasa olmadan kullanabileceksiniz projenizde. Kullanimi;
_dataService = new DataService();
DataTable dt = (DataTable)_dataService.ApplyCommand("select * from city");
Kisaca ne yaptigimiza bir bakalim. Bir klasör olusturduk ve bu klasöre bize her lazim zaman olabilecek metod ve islemleri derli toplu kullanabilecegimiz sekilde gelecegi düsünerek programladik. Her button'un altinda uzun kodlar yerine, her islemde tekrar eden kodlar yerine bir interface ve sinif ile isteklerimizi hem düzenli, hemde gelisime acik bir sekilde kodlara döktük.
Daha sonra eger tekrar eden veya edebilecegini düsündügünüz bir metod olursa bu metodu formunuzun arkasinda degil de hemen gidip IDataService icerisine ApplyCommand örnegindeki gibi gerekli düzenlemeleri yaparak ekleyin ve ardindan hemen DataService sinifini düzenleyin yeni metodunuz icin.
Saygilarimla