Standart MVC projesi oluşturuyoruz.
Yüklemiş olduğumuz SQL Lite dll versiyonlarını projemize referans olarak ekliyoruz.
Ben Navicat programı ile App_Data folder altında yeni bir Db oluşturdum ve ona navicat vasıtası ile bağlandım.
Daha sonra HomeController içerisine IConnection interface i ve ona bağlı SQLLiteConnector sınıflarını oluşturdum.
[csharp]
public class SQLLiteConnector :IConnection, IDisposable
{
private SQLiteConnection sql_con;
private SQLiteCommand sql_cmd;
private SQLiteDataAdapter DB;
private DataSet DS = new DataSet();
private DataTable DT = new DataTable();
public string ConnStr = @"Data Source=/App_Data/DemoSQL.db;Version=3;New=False;Compress=True;";
public SQLiteConnection Connect()
{
return sql_con = new SQLiteConnection(ConnStr);
}
public void Disconnect(SQLiteConnection Connection)
{
Connection.Close();
}
public void ExecuteQuery(string SqlQuery)
{
sql_con = Connect();
sql_con.Open();
sql_cmd = sql_con.CreateCommand();
sql_cmd.CommandText = SqlQuery;
sql_cmd.ExecuteNonQuery();
sql_con.Close();
}
public DataTable LoadData(string SQL)
{
sql_con = Connect();
sql_con.Open();
sql_cmd = sql_con.CreateCommand();
string CommandText =SQL;
DB = new SQLiteDataAdapter(CommandText, sql_con);
DS.Reset();
DB.Fill(DS);
DT = DS.Tables[0];
sql_con.Close();
return DT;
}
public void Dispose()
{
GC.SuppressFinalize(this);
}
}
public interface IConnection
{
SQLiteConnection Connect();
void Disconnect(SQLiteConnection Connection);
void ExecuteQuery(string SqlQuery);
DataTable LoadData(string SQL);
}
[/csharp]
Yukarıdaki kodun hata vermemesi için projenize using System.Data; ve using System.Data.SQLite; sınıflarını eklememiz gerekmektedir.
Daha sonra istediğimiz herhangi bir yerde yada controller da aşağıdaki gibi kullanabilirsiniz.
[csharp]
public ActionResult Index()
{
DataTable dt = new DataTable();
using (SQLLiteConnector Connector = new SQLLiteConnector())
{
dt = Connector.LoadData("Select * from DemoPersonel");
}
return View(dt);
}
[/csharp]
Aslında EF kullananlar için çok klasik bir yöntem kalmış olabilir. Ama Bir sonraki anlatımda EF ile SQL lite kullanımıda göreceğiz.