zoukankan      html  css  js  c++  java
  • Entity Framework执行Sql语句返回DataTable

             Entity Framework中对外开放了数据库连接字符串,使用的时候可以直接得到这个连接字符串,然后进行相关的操作。如果在使用的过程中,发现Entity Framework中有一些满足不了的需求的话,那么就可以用这个连接字符串,自己写ADO的代码,去数据库进行相关的操作。特别是对于一些复杂的查询,这时候,一般是想直接执行一个Sql语句,返回一个结果集。下面是一个方法,直接返回DataTable。

    /// <summary>
    /// EF SQL 语句返回 dataTable
    /// </summary>
    /// <param name="db"></param>
    /// <param name="sql"></param>
    /// <param name="parameters"></param>
    /// <returns></returns>
    public static DataTable SqlQueryForDataTatable(this Database db,
             string sql)
    {
     
        SqlConnection conn = new System.Data.SqlClient.SqlConnection();
        //conn.ConnectionString = db.Connection.ConnectionString;
        //if (conn.State != ConnectionState.Open)
        //{
        //    conn.Open();
        //}
     
        conn = (SqlConnection)db.Connection;
        SqlCommand cmd = new SqlCommand();
        cmd.Connection = conn;
        cmd.CommandText = sql;
     
        SqlDataAdapter adapter = new SqlDataAdapter(cmd);
        DataTable table = new DataTable();
        adapter.Fill(table);
     
        conn.Close();//连接需要关闭
        conn.Dispose();
        return table;
    }
            然后调用的时候,直接传入Context的Database进去,就可以了。

           参考网站:

           http://www.cnblogs.com/wlflovenet/archive/2011/12/30/EF11.html

  • 相关阅读:
    Python进程池multiprocessing.Pool的用法
    基于opencv的车牌提取项目
    Srapy 爬取知乎用户信息
    Scrapy框架简介及小项目应用
    豆瓣爬取图书标签
    CSS选择器使用
    关于 urlencode 的使用和 json 模块的介绍
    urllib库使用方法
    猫眼电影的各种爬取方法
    淘宝商品信息爬取
  • 原文地址:https://www.cnblogs.com/xiaoxiangfeizi/p/3541446.html
Copyright © 2011-2022 走看看