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

 

转载于:https://www.cnblogs.com/cxeye/p/4082678.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值