ASP.NET MVC SQLLITE

Standart MVC projesi oluşturuyoruz.

1

2

Yüklemiş olduğumuz SQL Lite dll versiyonlarını projemize referans olarak ekliyoruz.

3

4

Ben Navicat programı ile App_Data folder altında yeni bir Db oluşturdum ve ona navicat vasıtası ile bağlandım.

5

Daha sonra HomeController içerisine IConnection interface i ve ona bağlı SQLLiteConnector sınıflarını oluşturdum.


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);

    }

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.


  public ActionResult Index()
        {
            DataTable dt = new DataTable();

            using (SQLLiteConnector Connector = new SQLLiteConnector())
            {
                 dt = Connector.LoadData("Select * from DemoPersonel");
            }
            return View(dt);
        }

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.

Yanıt Yaz