Raw SQL Query without DbSet - Entity Framework Core

后端 未结 17 1438
眼角桃花
眼角桃花 2020-11-22 13:27

With Entity Framework Core removing dbData.Database.SqlQuery I can\'t find a solution to build a raw SQL Query for my full-text search query th

17条回答
  •  星月不相逢
    2020-11-22 13:54

    I used Dapper to bypass this constraint of Entity framework Core.

    IDbConnection.Query
    

    is working with either sql query or stored procedure with multiple parameters. By the way it's a bit faster (see benchmark tests )

    Dapper is easy to learn. It took 15 minutes to write and run stored procedure with parameters. Anyway you may use both EF and Dapper. Below is an example:

     public class PodborsByParametersService
    {
        string _connectionString = null;
    
    
        public PodborsByParametersService(string connStr)
        {
            this._connectionString = connStr;
    
        }
    
        public IList GetTyres(TyresPodborView pb,bool isPartner,string partnerId ,int pointId)
        {
    
            string sqltext  "spGetTyresPartnerToClient";
    
            var p = new DynamicParameters();
            p.Add("@PartnerID", partnerId);
            p.Add("@PartnerPointID", pointId);
    
            using (IDbConnection db = new SqlConnection(_connectionString))
            {
                return db.Query(sqltext, p,null,true,null,CommandType.StoredProcedure).ToList();
            }
    
    
            }
    }
    

提交回复
热议问题