ASP.NET MVC- EF返回連接池用ADO.NET方式訪問數據庫


  用習慣了ADO.NET的方式去訪問數據庫,雖然ADO.NET寫的代碼沒有EF簡潔,可是也並不麻煩。而且EF在進行多表查詢的那種方式是,EF需要先去數據庫里定義外鍵,再進去一次代碼生成,然后才能用INCLUDE方法進行多表關聯查詢。我不太喜歡那樣,還不如老老實實寫做SQL語句。

 

  所以ADO.NET 不能完成不用掉。那么怎么將EF和ADO.NET結合。

  其實很簡單,只要將EF的連接池返回成ADO.NET的SQLCONNECTION。然后就可以用ADO.NET的方式來寫了。

 

        protected void Button4_Click(object sender, EventArgs e)
        {
            var context = new CcxDemoEntities();
            SqlConnection conn = context.Database.Connection as SqlConnection;
            conn.Open();
            var cmd = (conn).CreateCommand();
            cmd.CommandText = "select * from gBook_Message";
            SqlDataReader dr = cmd.ExecuteReader();
            DataTable dt = new DataTable();
            dt.Load(dr);

        }

        protected void Button5_Click(object sender, EventArgs e)
        {
            var context = new CcxDemoEntities();
            SqlConnection conn = context.Database.Connection as SqlConnection;
            conn.Open();
            var cmd = (conn).CreateCommand();
            cmd.CommandText = "pro_Message";
            cmd.CommandType = CommandType.StoredProcedure;

            DataTable dt = new DataTable();
            SqlDataReader dr = cmd.ExecuteReader();
            dt.Load(dr);
        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM